Stories
Slash Boxes
Comments

Dev.SN ♥ developers

posted by Cactus on Saturday March 08 2014, @03:30AM   Printer-friendly
from the don't-tell-me-upgrade-PCs dept.

Subsentient writes:

"I'm a C programmer and Linux enthusiast. For some time, I've had it on my agenda to build the new version of my i586/Pentium 1 compatible distro, since I have a lot of machines that aren't i686 that are still pretty useful.

Let me tell you, since I started working on this, I've been in hell these last few days! The Pentium Pro was the first chip to support CMOV (Conditional move), and although that was many years ago, lots of chips were still manufactured that didn't support this (or had it broken), including many semi-modern VIA chips, and the old AMD K6.

Just about every package that has to deal with multimedia has lots of inline assembler, and most of it contains CMOV. Most packages let you disable it, either with a switch like ./configure --disable-asm or by tricking it into thinking your chip doesn't support it, but some of them (like MPlayer, libvpx/vp9) do NOT. This means, that although my machines are otherwise full blown, good, honest x86-32 chips, I cannot use that software at all, because it always builds in bad instructions, thanks to these huge amounts of inline assembly!

Of course, then there's the fact that these packages, that could otherwise possibly build and work on all types of chips, are now limited to what's usually the ARM/PPC/x86 triumvirate (sorry, no SPARC Linux!), and the small issue that inline assembly is not actually supported by the C standard.

Is assembly worth it for the handicaps and trouble that it brings? Personally I am a language lawyer/standard Nazi, so inline ASM doesn't sit well with me for additional reasons."

 
This discussion has been archived. No new comments can be posted.
Display Options Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by hankwang on Saturday March 08 2014, @11:44AM

    by hankwang (100) on Saturday March 08 2014, @11:44AM (#13213) Homepage

    Seems worth it to me. If it only causes problems to the market segment that is:
    a) still using old pentiums

    I wonder what one could possibly want to use a Pentium for, these days, other than running some kind of computer museum or running some ancient industrial ISA hardware that is difficult to replace. (Even then, one can buy industrial computers that combine modern CPUs with ISA buses.) A Raspberry Pi has much more computing power than that old Pentium, at 5-10% of the power consumption. (At Dutch electricity prices, the break-even is at about 3 months of continuous use - EUR 0.22/kWh, 75 versus 5 W.)

    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 0) by Anonymous Coward on Saturday March 08 2014, @02:52PM

    by Anonymous Coward on Saturday March 08 2014, @02:52PM (#13264)

    I'm wondering if an x86 emulator on a modern smartphone could run Linux, mplayer and be faster than one of his pentium machines... ;)

    For some perspective Intel Core 2 came out in 2006. And the first Opterons and Athlon 64s in 2003.
    Compare Athlon 64s vs Pentium 100MHz: http://www.cpu-world.com/Compare/255/AMD_Athlon_64 _3800+_(45W)_vs_Intel_Pentium_100_MHz_(A80502-100) .html [cpu-world.com]
    So even 10 year old machines are about 50-200x faster than Pentium 100MHz (about 20 years old).

    If you replace the offending ASM instructions, how much of the current multimedia stuff out there will work in practice if the CPU is 100x slower? Good luck playing Full HD videos ;).

    So yeah use pentium systems as a hobby if you wish, but complaining that mplayer doesn't work? What next complain mplayer can't play 1080p on your pentium?