Google Brings AmigaOS to Chrome Via Native Client Emulation 157
First time accepted submitter LibbyMC writes "Google's approach to bringing older C software to the browser is demonstrated in bringing the '80s-era AmigaOS to Chrome. 'The Native Client technology runs software written to run on a particular processor at close to the speeds that native software runs. The approach gives software more direct access to a computer's hardware , but it also adds security restrictions to prevent people from downloading malware from the Web that would take advantage of that power.'" Chrome users can go straight to the demo.
80's hardware (Score:5, Funny)
So an emulator running on 2010 era hardware can almost run at speeds of the native technology on 80's era hardware.
wow
Re: (Score:1)
It's "in the browser", so it counts as innovation. More library/emulation/abstraction layers equals progress in the 21st century - didn't you know?
Re: (Score:1)
I thought the point of Chrome native stuff was that a layer of abstraction was removed?
Re:80's hardware (Score:4, Insightful)
No, the point of chrome is to get people to switch over to google.
Re: (Score:2)
So an emulator running on 2010 era hardware can almost run at speeds of the native technology on 80's era hardware.
With dynamic recompilation (which PNaCl disallows, if I'm not mistaken), you could run it even on 2000 era hardware.
Re: (Score:2)
2000 is when I first saw a computer (it was a 200Mhz pentium, if my memory is serving me correctly) that ran, through UAE, and Amiga 500 emulation at around 100% speed. It might actually have been even earlier than that. I don't remember what precise program I tested this with, but I'm fairly certain it was a game that used the copper.
So, yeah, the current technology isn't particularly impressing, at least as far as raw emulation speed is concerned.
I also can't explain why it is taking it so #!@$&!@# lo
Re: (Score:2)
I think your memory is failing you. The Amiga took forever to boot, but then so did all computers back then sans the Atari ST.
Re: (Score:2)
I think your memory is failing you. The Amiga took forever to boot from floppies
FTFY. From hard disk, it wasn't so bad. I even had a startup sequence that would test the current kickstart, if it was 1.3, load a 2.04 kickstart that was hacked to run from memory, reboot, and then load the 2.04 workbench. The entire process would not take more than a minute. I actually remember much much less, but it was many years ago, and my memory may be failing me here.
but then so did all computers back then sans the Atari ST.
I never did any serious amount of work with the Atari ST, so I wouldn't know about that. As for the others: the 8 bit machines took no
Re: 80's hardware (Score:2)
Yes, the 8-bits loaded fast, unless you had a hard drive. That usually required a custom OS/DOS to be loaded and initialized from the hard drive too. I forget what the name of the apple 2's was. The Ataris 8-bits had RDOS/QDOS or equivalent.
The Atari STs had it in ROM, so booting took 10-15 seconds unless you wanted to boot a custom OS, and then it was just only twice as fast as the Amiga (OS was less than half the size and actually fit on one floppy).
Re: (Score:2)
All I got was: "Error: NaCl module load failed: PnaclCoordinator: PNaCl Translator Error: Error reading bitcode file: Invalid BINOP record"
Re:80's hardware (Score:5, Funny)
It's emulating Windows instead of AmigaOS?
Re:80's hardware (Score:4, Insightful)
So an emulator running on 2010 era hardware can almost run at speeds of the native technology on 80's era hardware.
wow
On the other hand, you can emulate a high-end IBM mainframe circa 1980 at higher speed than the original on a cell phone.
That's terrifying. You don't even need motor-generators or a water chiller.
Re:80's hardware (Score:4, Insightful)
So while a 1980 mainframe was used for ballistic calculations, credit-card transactions, DNA structural analysis and such. Today's smartphones are essentially used for playing AngryBirds and poking on Facebook. That's what we call progress ;-)
Re: (Score:3)
Surely Angry Birds is just a modern version of balistic calculations.
Re: (Score:3)
IBM Watson that defeated the humans at playing Jeopardy is basically just a cluster of machines running Apache Hadoop. So architecturally there isn't anything really special about the hardware or software.
If things keep progressing as they are: in 10 years, your smartphone will have the same processing power, storage and memory as IBM Watson does now at the price and size of a smartphone from now.
Think about that.
Re: (Score:2)
If it's a javascript emulator, it's going to be really slow. If it's some hybrid that are JIT, then it's not secure. Speed, security, cheap, pick two.
Re: (Score:2)
Re: (Score:2)
Security is done by analyzing the machine code and only allowing "safe" operations.
Some of us didn't even believe that the first time we were told it was 'secure'.
Re: (Score:2)
So an emulator running on 2010 era hardware can almost run at speeds of the native technology on 80's era hardware.
wow
10 Megs of Sram memory, a 50 MB hard drive and I did what I'm doing with windows now. Remember 20 years ago when you played Doom and
that's all you could do? I ran a BBS in the background while playing my games.
Re: (Score:2)
That's sort of the inherent nature of emulation. Next thing we know, you'll be complaining that it takes a fairly beefy machine to accurately emulate the C64.
Give me a damn web browser (Score:5, Funny)
Re:Give me a damn web browser (Score:5, Interesting)
This is Google demonstrating that their platform for abstracting a client's hardware is robust and performant. I suspect that Amiga emulation is just because it's cool.
Having this layer of abstraction protects Google from the machinations of software vendors who might want a piece of their action.
Re:Give me a damn web browser (Score:5, Funny)
This is Google demonstrating that their platform for abstracting a client's hardware is robust and performant. I suspect that Amiga emulation is just because it's cool.
No, It's just so you can play Lemmings the way it was meant to be played.
Re: (Score:1)
Re: (Score:3)
2 player 2 mouse! Used to love having Lemmings battles
Re: (Score:1)
No, ultimately, it's so you will be able to put one Android phone in 7 bars on Tybee and 1 in a mortuary in Port Wentworth and end up with an 8-line distributed Cnet Amiga cluster to play spot the Fed on. ;-) Bonus karma if it's FTSC compliant.
Thanks and a tip 'o the hat to Don Murray and the old Night Owl BBS crowd.
Re: (Score:2)
..while reducing the incentives for developing non SaaS software, which protects users from the machinations of google.
Re: (Score:2)
Indeed, Firefox now plays video content via gstreamer, so I only keep Chrome around for recalcitrant flash-only sites.
Re: (Score:2)
This is only useful to vendors who want control over how users use their software. I would never want to depend on such 'services' for critical workflows.
Re: (Score:2)
These "services" can exist on your own network, or your own hard drive.
Let me guess... (Score:2)
.... this will be found under the "apps" chrome browser links .... right along with Facebook...
Great! If they could only bring us.... (Score:2)
What's The Point? (Score:1)
What's the point of this recent spate of in browser OS inception? Do we really need yet another abstraction layer in the software stack? It would seem that these guys want to make it so.
What kind of processor and internet pipe will I need to run Amiga OS, inside Chrome, on "my" Chromebook?
Re: (Score:2)
Hardware and low level software is scary to younger programmers. Thus to make it more less intimidating we put the hardware and software in a browser.
Re: (Score:2)
I think the gp's point was that it's not his future. I am in full agreement. I will never use 'app' stores and remote access SaaS for critical applications.
So Great OS ran on top of crappy OS? (Score:2)
So it takes 20 years to finally get a Great OS on my modern computer, though it runs on top of a crappy OS (Windows. Yes, i know a lot of peeps run Linux, but I'm referring to Windows, because Linus isn't really a crappy OS).
Sweet!
All joking aside, I've always thought the AmigaOS should of went to a linux kernel and brought the sweetness of the Amiga OS as a GUI.
Re: (Score:1)
should of
Maybe you should of went to skool?
Re: (Score:2)
If you want to use AmigaOS on your PC so bad, just use this. [wikipedia.org] Or even get some specialized hardware. [wikipedia.org]
Re: (Score:1)
Linus isn't really a crappy OS
Personally I wouldn't call him an OS at all.
Re: (Score:3)
should of
In the recent couple of years a new trend seems to have emerged where people incorrectly write "should of" instead of "should have".
Re:So Great OS ran on top of crappy OS? (Score:5, Funny)
Re: (Score:3)
Re: (Score:1)
Re: (Score:2)
My head just exploded.
Re: (Score:2)
Don't worry about it -- it's a mute point.
Re: (Score:2)
This begs a number of questions....
Re: (Score:1)
for all intensive purposes
I thinks meant "for all intents and purposes."
Re: (Score:1)
Re: (Score:2)
Re: (Score:3)
That whooshing sound is the point of his post flying over your head at mach 3! 8)
Re: (Score:2)
I'm not so sure. Maybe you're hearing the whooshing sound because the only thing AC complained about, was "irregardless" -- which though nonstandard, was actually spelled correctly and used as it normally is used. This distinguishes it from the other terms which were phonetic misuses of familiar phrases. So maybe it was a subtle riff on the previous joke. If so, it was deep. Then again, maybe not. It's pretty hard to tell here.
Re: (Score:3)
Re: (Score:1)
Tsk. That's "shoulda", not "should of".
Can I run Chrome inside of Chrome? (Score:1)
Re: (Score:2)
Yo dawg, I hear you like browsers ... ;-)
Only on Windows Apparently (Score:2)
Version 30.0.1599.114 Ubuntu 13.10 (30.0.1599.114-0ubuntu0.13.10.2)
So Windows only.
Re: (Score:2)
No, it loads and runs on Linux with the latest stable release of Chrome as well.
It doesn't run _well_.. it failed to capture the mouse and it locked up the browser, but it does run. I got to see Workbench and everything.
Re: (Score:2)
For small values of 'run', apparently.
Re: (Score:2)
Runs fine on my Ubuntu box with latest chrome.
Re: (Score:2)
Runs perfectly on a Mac. (10.8)
Re: (Score:2)
Runs perfectly on a Mac. (10.8)
Interesting. From above the black box on Chromium 30.0.1599.114 (Chromium probably explains the lack of support on my system):
This page uses Portable Native Client, a technology currently only supported in Google Chrome (version 31 or higher; Android and iOS not yet supported).
Re: (Score:2)
Yup. Chrome 31 on a Mac.
Mac != iOS.
Re: (Score:3)
Linux here, works fine for me. Chrome 31. I'd ask "can you try to upgrade to the latest version?", but I wouldn't want to contribute to, you know, Slashdot losing it. :)
Re: (Score:2)
Of course, if there isn't a dup in a week or two then I'll know for
Open message to all developers (Score:2)
Re: (Score:2)
And reticulating splines is plagiarism from SimCity 2000.
Re: (Score:1)
So, by all means, write a perfectly accurate progress bar.
No, please. You're the go-getter telling us lazy gadabouts what we're doing wrong, so prove yourself. Go write a progress bar that perfectly consistently predicts how long an application startup operation will take. This application will need to touch upon fifty or sixty different OS subsystems to get everything in order, must be runnable on any modern computer architecture with any reasonable storage hardware and give accurate predictions on non-
Re: (Score:2)
Re: (Score:1)
Why? (Score:2)
Why the hell would I want my browser to be able to do that?
This just smacks of something which is going to become a huge security issue, even if Google is trying to prevent malware.
Works pretty well (Score:5, Informative)
As a former long time Amiga user, this seems to work pretty well on the outset, and gives an authentic experience in regards to the clock timing and boot time. (though it thankfully may be a little faster :) ) It looks like they are using the emulation code from Cloanto (Amiga Forever) which has been around for quite a long time now.
This OS and demos may look very simple to younger folks, but it was quite groundbreaking at the time. the H.A.M. (Hold and Modify) demo showing 4096 colors was pretty impressive at a time when most PCs were stuck with 256 colors. There are a lot of really nice demos for the Amiga from the demoscene that took all of that a step further even, hopefully someone thought to save and compile them.
The only issue I ran into so far is on the juggler demo, the ESC key is needed to exit the demo, while on the emulator the ESC key is what switches you away from the emulator mouse to your native mouse, so it does not trigger an ESC on the Amiga. (you need to reset the emulator) Juggler doesn't let you pull down the screen to reveal the workbench. There may have been a keyboard shortcut that I have forgotten about to toggle screens. I haven't touched an Amiga in 20 years.
Hats off to the coders, brought back a lot of memories.
Re: (Score:3)
Re: (Score:3)
The H.A.M. (Hold and Modify) demo showing 4096 colors was pretty impressive at a time when most PCs were stuck with 256 colors
HAM was around almost two years before VGA debuted (with the PS/2 in April 1987)! (*)
The downside was that it was hard to use for animated graphics, since the colour of most pixels were modified shades of the one to their left, meaning one had to take into account surrounding pixels when moving an object to avoid miscoloured streaking. Few action games used it, though I'm still convinced more games could have exploited HAM if the problem had been analysed methodically and restrictions on the use of base c
Re: (Score:2)
HAM was great for scrolling a hi-res background gradually to the left. I was amazed how few side-scroller games took advantage of that: I can only remember a couple, but they had astonishing graphics by the standards of the time.
Re: (Score:3)
HAM was actually sort of a side effect. It was started as an experiment in ways to process NTSC signals in the chip, modifying hue and brightness. Later when changing to RGB there was no need for this anymore but it was impractical to remove it without doing a new layout of the chip (these were some of the last digital chips layed out by hand).
HAM was very useful for static images, especially things like photographs where colors changed gradually. Especially with modes that could change the color palette
Re: (Score:2)
Most people at the time were stuck on black and white with PCs, with 256 colors only for those who spent a huge amount of money for it.
I think the demos are still around if you search for Fish Disks. However the original floppies are essentially unusable on any standard PC floppy drive (no ability to control rotation speeds).
Lack of vision (Score:5, Insightful)
Sometimes, Google just baffles me. The lack of direction in their product lines makes me shake my head.
We have several distinct software platforms:
1) Android. Development in XML with Java used as glue to hold everything together. Unless you don't. You can use standard C libraries and call the Linux kernel directly, bypassing the Dalvik Java VM. [cnet.com]
2) Chrome browser. Development largely in javascript, again there are some obvious exceptions. [google.com] Javascript is, of course, preferred because it's safer, so ChromeOS protects you by having everything done in Javascript. Except that it isn't.
3) ChromeOS. Kinda/Sorta like using the Chrome browser, except that it's not, because you are developing things that run as if they were actual clients. In Javascript. And of course, this too, is just as strictly enforced [unixhub.net].
4) But Let's not forget the 4th platform in the trio: Google's Go language [unixhub.net] is clearly a contender, and it's designed to replace C, except for a few bone-headed decisions like linking everything statically resulting in enormous binaries [donatstudios.com]. Because you really, really need to have the same library installed once for every app installed, because that way you get to recompile everything installed on your system any time a security update comes out for your favorite library. Except that, of course there are exceptions here, too. [google.com]
And most importantly, you cannot target all these platforms with any single codebase written in any language. It's like they are trying to make their product suite as difficult as just using products from multiple vendors anyway.
Re: (Score:3)
Yeah, because that worked out so well for Sun and Microsoft, right?
Different users have different needs that are met by different languages and environments. And unlike other companies, Google seems to have concluded reasonably that they don't know what people are going to be using, so they give people options.
Re: (Score:2, Insightful)
Dynamic linking is cancerous, thank the gods they chose not to use it. Of course, it's Rob Pike and Ken Thompson, so there was never any risk of it. And never will be as long as they're on it.
Enormous binaries versus shared libraries (Score:3)
I'm not a software developer, but as a long-time network admin it always struck me that shared libraries were a great idea except when they weren't.
Before I switched to FreeBSD, Linux always seemed to have headaches with shared library problems, with some apps not working with some versions of shared libraries and a general nuisance being made with multiple versions of shared libraries being around.
Windows, of course, has its reputation for DLL hell, which I think was more of an issue in really old versions
Re: (Score:2)
Before I switched to FreeBSD, Linux always seemed to have headaches with shared library problems, with some apps not working with some versions of shared libraries and a general nuisance being made with multiple versions of shared libraries being around.
I think you're thinking of Windows. Linux works because it can have multiple versions of the same library, and minor versions are compatible, so you only need one copy of each major version to remain compatible with old software.
Given the size of storage generally available now, is it really so bad to have statically linked binaries?
Uh, yes. Do you really want to have to download a new copy of every single application on the system when there's a security fix for the standard C library?
That said, Windows isn't much better off when every program has its own copy of zlib.dll and you have to update fifty of them w
Re: (Score:2)
I think you're thinking of Windows. Linux works because it can have multiple versions of the same library, and minor versions are compatible, so you only need one copy of each major version to remain compatible with old software.
I've heard of problems with Linux with shared libraries, but not to the same degree as with Windows. I got the impression that it was more irritating because it was the exception rather than the rule, so it was tested lower on the list of things that might go wrong. This is a vague recollection from decades ago, so it likely isn't relevant today.
That said, Windows isn't much better off when every program has its own copy of zlib.dll and you have to update fifty of them when a new security fix is released.
And this is how Windows solved DLL Hell. It's almost as good as statically linking for linking errors (the dll can still be deleted), less download time for libr
Re: (Score:2)
Re Go being statically linked: great! It's meant to be a language for writing services. Those are typically deployed by creating a giant tarball of all the artifacts needed to deploy a service, copying it to all the hosts that will run it, extracting in place, and restarting. In this case, the tarball is the compiled executable. You can copy it to its server and have everything required to run it in a single tidy package.
Contrast with a Java deployment where the tarball will contain many JAR files, etc. Rol
Re: (Score:3)
Sometimes, Google just baffles me. The lack of direction in their product lines makes me shake my head.
We have several distinct software platforms:
1) Android. Development in XML with Java used as glue to hold everything together. Unless you don't. You can use standard C libraries and call the Linux kernel directly, bypassing the Dalvik Java VM. [cnet.com]
2) Chrome browser. Development largely in javascript, again there are some obvious exceptions. [google.com] Javascript is, of course, preferred because it's safer, so ChromeOS protects you by having everything done in Javascript. Except that it isn't.
3) ChromeOS. Kinda/Sorta like using the Chrome browser, except that it's not, because you are developing things that run as if they were actual clients. In Javascript. And of course, this too, is just as strictly enforced [unixhub.net].
4) But Let's not forget the 4th platform in the trio: Google's Go language [unixhub.net] is clearly a contender, and it's designed to replace C, except for a few bone-headed decisions like linking everything statically resulting in enormous binaries [donatstudios.com]. Because you really, really need to have the same library installed once for every app installed, because that way you get to recompile everything installed on your system any time a security update comes out for your favorite library. Except that, of course there are exceptions here, too. [google.com]
And most importantly, you cannot target all these platforms with any single codebase written in any language. It's like they are trying to make their product suite as difficult as just using products from multiple vendors anyway.
It's really quite simple. A lot of Google projects started from a handful of people going "you know what would be a cool idea?" and doing it with very little approval or red tape (the fabled 20% time). That's certainly the only explanation I can think of for DART, at any rate.
Go is basically what you get when you hire a former Plan 9 developer, expose him to Google's internal hermetic build system (where a 100MiB binary is small), then let him build cool stuff to keep him from getting bored.
Disclaimer: I
Get busy GoG!!! (Score:3)
Just think about all the great old Amiga/Commodore-64/etc games you could sell using something like this. I'll pay good money for Bard's Tale I/2/3 and Raid on Bungling Bay.
Re: (Score:2)
Meh (Score:2)
If it's not sync'd to the video refresh it's going to be a very choppy, tear-ridden experience.
Re: (Score:2)
If it renders everything upside down it's not going to be very useful.
If it continuously plays a fart noise at full volume it's going to be very annoying.
If it summons Cthulhu it's not going to be very enjoyable for anyone.
If...
If...
If...
Re: (Score:2)
Well yes I suppose that is correct, but given that the situations you described are incredibly unlikely and the scenario I described is in line with every single emulator-in-a-browser I have ever seen, what is your frickin point?
ActiveX (Score:1)
What is this, ActiveX reborn?
FWIW (Score:3)
Really, the Amiga OS nowadays is just a plaything for a few very hardcore hobbyists willing to pay for overpriced, underpowered custom hardware that isn't even directly compatible with the original Amiga anyway. Amiga OS (and the original hardware) was fantastic in its day, and beat the living heck out of MS-DOS and early Windows, but that was a long time ago. Anyone for whom Amiga OS/hardware compatibility was essential or even useful would have been forced to give up and migrate elsewhere by the late-90s at most. For that reason, even if one *could* upgrade it to a modern OS, it'd make more sense just to write a new OS from scratch- the "classic" core would just end up being legacy baggage that would please the Amiga obsessives because they could call it Amiga OS, but have little real world use beyond muddying the design.
(Sorry, didn't want that to sound like a dismissal of the genuinely innovative Amiga OS, but things have moved on too far now).
Also, the rights to the various Amiga and Commodore IPs (names, hardware and software all separate) have been split up, passed around like a bad game of pass the parcel, sublicensed and disputed; I won't go into the details because (a) I can't be bothered and (b) I'm not sure myself! :-)
:-)
But... yeah. Technically, last time I heard you can still buy a "modern" AmigaOne and run the new versions of AmigaOS on it.
(*) Though that may be for values of "active" comparable to the rate of flow of glass in medieval windows. And yes, I know that's possibly a myth.
(**) To be fair, this is mentioned on Slashdot at regular intervals, so it's possible that many of you are aware of this anyway. The rights to the Amiga name, to manufacture the hardware and to the OS http://news.slashdot.org/comments.pl?sid=2710941&cid=39268663 [slashdot.org]
Amiga 1.3 Please... (Score:2)
They are running Amiga OS 1.3 please...... At LEAST be able to do AmigaOS 2.1..
Re: (Score:2)
Once again the Amiga surfaces... (Score:2)
Amiga is always surfacing with new purchasers with great plans that
never work out. This one just might fly.
I've honestly been avoiding Chrome like the plague, if someones trying
to force something on you, I figure it can't be a good thing. I mean you click
the wrong area on just about any web page you find yourself downloading
Chrome.
But this Amiga things got me, I have two other boxes just like this one http://i42.tinypic.com/2hwpx82.jpg [tinypic.com]
all Amiga related "stuff", mostly games.
I started on the TRS-80 III, and
Let's see it in asm.js (Score:2)
I really would like to see this same setup in asm.js to see how it compares.
I wrote a Commodore PET, C64 and Apple ][ emulator (Score:2)
I works perfectly!!! (Score:2)
I got a Guru Meditation!
Re: (Score:2, Funny)
Yes! Port Chromium to AmigaOS, so you can run it in the emulator in Chrome!
Re: (Score:2)
....and then we can run the emulator on the emulated chrome running on the emulator, running on chrome?
It's fricking turtles all the way down!
This reminds me of someone showing off his Amiga by seeing how many clock apps he could run simultaneously on the desktop. At the time we were all suitably impressed with the egregious display of multitasking of having 100 overlapping clocks all ticking away the seconds simultaneously. I would still be impressed (and entertained for at least a minute) by chrome->Am
Re: (Score:2)
Works for me:
Something wonderful has happened Your AMIGA is alive !!! and, even better...
Some of your disks are infected by a VIRUS !!! Another masterpiece of The Mega-Mighty SCA !!