Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Amiga Chrome Software Emulation (Games) Google Operating Systems

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.
This discussion has been archived. No new comments can be posted.

Google Brings AmigaOS to Chrome Via Native Client Emulation

Comments Filter:
  • by phrostie ( 121428 ) on Thursday December 12, 2013 @02:05PM (#45672411)

    So an emulator running on 2010 era hardware can almost run at speeds of the native technology on 80's era hardware.

    wow

    • by Anonymous Coward

      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?

    • 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.

      • by Sun ( 104778 )

        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

    • 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:4, Insightful)

      by RabidReindeer ( 2625839 ) on Thursday December 12, 2013 @03:27PM (#45673371)

      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)

        by Anonymous Coward on Thursday December 12, 2013 @06:01PM (#45674955)

        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 ;-)

      • by Lennie ( 16154 )

        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.

    • by epyT-R ( 613989 )

      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.

      • by Tr3vin ( 1220548 )
        It isn't. It is C/C++ code running in a sandboxed environment. Security is done by analyzing the machine code and only allowing "safe" operations.
        • by 0123456 ( 636235 )

          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'.

    • 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.

    • by LocalH ( 28506 )

      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.

  • by bobbutts ( 927504 ) <bobbutts@gmail.com> on Thursday December 12, 2013 @02:06PM (#45672421)
    If I want an emulator, I'll get an emulator.
    • by vastabo ( 530415 ) on Thursday December 12, 2013 @02:29PM (#45672687)

      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.

      • by RabidReindeer ( 2625839 ) on Thursday December 12, 2013 @03:22PM (#45673305)

        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.

        • by vastabo ( 530415 )
          Touche
        • by jbdigriz ( 8030 )

          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.

      • by epyT-R ( 613989 )

        ..while reducing the incentives for developing non SaaS software, which protects users from the machinations of google.

    • Indeed, Firefox now plays video content via gstreamer, so I only keep Chrome around for recalcitrant flash-only sites.

  • .... this will be found under the "apps" chrome browser links .... right along with Facebook...

  • a new Duke Nuke... errrr ..... nevermind...
  • by Anonymous Coward

    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?

    • 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.

  • 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.

    • by Anonymous Coward

      should of

      Maybe you should of went to skool?

    • If you want to use AmigaOS on your PC so bad, just use this. [wikipedia.org] Or even get some specialized hardware. [wikipedia.org]

    • by Anonymous Coward

      Linus isn't really a crappy OS

      Personally I wouldn't call him an OS at all.

    • 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".

      • by cervesaebraciator ( 2352888 ) on Thursday December 12, 2013 @03:00PM (#45673047)
        Irregardless of what you say, "should of" works for all intensive purposes. Pacifically when writing informally, anyways. What else is one suppose to do in this case and point?
        • by fatphil ( 181876 )
          I detect someone whom needs to sit down and relax with a nice expresso, and watch this: http://www.youtube.com/watch?v=c3y0CD2CoCs
        • by Anonymous Coward
          And, walla, the world was made hole.
        • by Trogre ( 513942 )

          My head just exploded.

        • by anagama ( 611277 )

          Don't worry about it -- it's a mute point.

        • This begs a number of questions....

        • for all intensive purposes

          I thinks meant "for all intents and purposes."

        • People need to learn how to use English correctly, informally or not. "Should of" does not read correctly nor does it enhance understanding, therefore it is nonsensical to use it. Informal usage should not transfer to the written word. As far as I can gather the usage comes from ill-educated people that spell phonetically with unusual accents such as Essex English. I consider it close to txt spk for parsing ease when reading, and the poor use of language really gets in the way of the author's point coming a
  • A browser running in a browser would be even more secure.
  • Needs Chrome 31 or high, no iOs or Android. Also:

    Version 30.0.1599.114 Ubuntu 13.10 (30.0.1599.114-0ubuntu0.13.10.2)

    So Windows only.

    /. is really loosing it.
    • by jonabbey ( 2498 )

      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.

      • It doesn't run _well_.. it failed to capture the mouse and it locked up the browser, but it does run.

        For small values of 'run', apparently.

    • by sootman ( 158191 )

      Runs perfectly on a Mac. (10.8)

      • 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).

    • 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. :)

      • Actually I suspect that the problem is that I'm running Chromium and not Chrome proper. I don't really have any incentive to change that since I don't really have much immediate use for an Amiga emulator or the willingness to spend the time to get it to work. It'll happen eventually, and if I still care I'll check out the demo. This is Slashdot so I can expect a dup in a week or so to remind me, which may be far enough into the future.

        Of course, if there isn't a dup in a week or two then I'll know for
  • Please stop with cutesy loading messages (reticulating splines, fetching slippers, percolating coffee). You were too lazy to include an accurate bar indicating when the loading process would finish, and you are insulting our time wasted looking at your "jokes".
    • by chthon ( 580889 )

      And reticulating splines is plagiarism from SimCity 2000.

    • by Anonymous Coward

      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-

    • by Anonymous Coward
      Please stop taking out your psychological problems on happier people.
  • The approach gives software more direct access to a computer's hardware

    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)

    by PhantomHarlock ( 189617 ) on Thursday December 12, 2013 @03:02PM (#45673063)

    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.

    • The scene is still alive and well, and there are still Amiga demos to be found without great searching. Pouet.net [pouet.net] is a great place to begin. For more general eye catching demos take a look at scene.org [scene.org]
    • 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

      • by lgw ( 121541 )

        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.

      • 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

    • 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)

    by mcrbids ( 148650 ) on Thursday December 12, 2013 @03:05PM (#45673097) Journal

    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.

    • And most importantly, you cannot target all these platforms with any single codebase written in any language

      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)

      by Anonymous Coward

      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.

    • 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

      • by 0123456 ( 636235 )

        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

        • 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 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

    • 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

  • by MetricT ( 128876 ) on Thursday December 12, 2013 @03:52PM (#45673689)

    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.

    • I MESS those games, it when old games were better than some of the newer games. There are quite a few C64 emulators and some very good Amiga emulators also.
  • by Trogre ( 513942 )

    If it's not sync'd to the video refresh it's going to be a very choppy, tear-ridden experience.

    • 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...

      • by Trogre ( 513942 )

        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?

  • What is this, ActiveX reborn?

  • by Dogtanian ( 588974 ) on Thursday December 12, 2013 @05:49PM (#45674863) Homepage
    Thought I'd point out that technically, AmigaOS is still around- in fact, last time I heard it's being "actively" developed (*) and sold, albeit as a very niche product targeted at diehard hobbyists. (**) As I commented, though even several years back [slashdot.org]:-

    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]

  • They are running Amiga OS 1.3 please...... At LEAST be able to do AmigaOS 2.1..

    • by smash ( 1351 )
      This is merely a choice of ROM. No real technical reason it won't run 2.1 as well or instead. 1.3 is compatible with far more games than later versions.
  • 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

  • I really would like to see this same setup in asm.js to see how it compares.

  • I wrote a Commodore PET, Vic-20, C64 and Apple ][ emulator in native-client as well. You can play with it here: http://www.scale18.com/nc/game/game.html [scale18.com]
  • I got a Guru Meditation!

The use of money is all the advantage there is to having money. -- B. Franklin

Working...