Is this coding or archeology?
-
honey the codewitch wrote:
Who still uses power pcs
NASA, apparently. Their approved space hardened computer is a PPC with a whopping 256 MB of RAM. Space hardening is difficult. EDIT: here's a 2 minute video with the short explanation Why is NASA's New Perseverance Rover Using a 23 Years Old Chipset From The iMac G3? [ PowerPC 750 ] - YouTube[^]
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
I totally understand why they would do it. For awhile the shuttles were running machines with 256kB of RAM, I forget what architecture. That's not code you want to revisit. That's code that goes through mountains of approval, documentation, testing. It's elephanting expensive to develop, and quite difficult to do correctly. I haven't watched the video, but I run into a smaller version of the same problem with medical/clinical software.
Real programmers use butterflies
-
I totally understand why they would do it. For awhile the shuttles were running machines with 256kB of RAM, I forget what architecture. That's not code you want to revisit. That's code that goes through mountains of approval, documentation, testing. It's elephanting expensive to develop, and quite difficult to do correctly. I haven't watched the video, but I run into a smaller version of the same problem with medical/clinical software.
Real programmers use butterflies
I don't think I want to see any
ifdef
s in such software. -
I totally understand why they would do it. For awhile the shuttles were running machines with 256kB of RAM, I forget what architecture. That's not code you want to revisit. That's code that goes through mountains of approval, documentation, testing. It's elephanting expensive to develop, and quite difficult to do correctly. I haven't watched the video, but I run into a smaller version of the same problem with medical/clinical software.
Real programmers use butterflies
honey the codewitch wrote:
I totally understand why they would do it. For awhile the shuttles were running machines with 256kB of RAM, I forget what architecture.
8086. Sometime in the 2000's they went on an ebay shopping spree for old embedded systems they could harvest spare CPUs from.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius
-
I don't think I want to see any
ifdef
s in such software.How do you stub missing/incomplete physical components for developing without ifdefs?
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
-
How do you stub missing/incomplete physical components for developing without ifdefs?
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
That sounds like a bad idea when dealing with the systems indicated.
-
That sounds like a bad idea when dealing with the systems indicated.
It's SOP, it actually allows to build and test the software alongaside the hardware. Otherwise you'd have to wait for all the hardware to be finalized and in production, then start writing the firmware and the software over it... with the potential of discovering integration issues, in that case the hardware must be modified and the software development halted until everything is in production again. Nope, software starts on its own and everything not yet existing is stubbed. Meanwhile all the development, testing and most importantly validation that can be done without the hardware is done.
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
-
It's SOP, it actually allows to build and test the software alongaside the hardware. Otherwise you'd have to wait for all the hardware to be finalized and in production, then start writing the firmware and the software over it... with the potential of discovering integration issues, in that case the hardware must be modified and the software development halted until everything is in production again. Nope, software starts on its own and everything not yet existing is stubbed. Meanwhile all the development, testing and most importantly validation that can be done without the hardware is done.
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
Which is fine for the early stages of the development of commercial types of software, but when a rocket is about to be launched, that would not be an ideal situation.
-
I stumbled upon this in my travels today :laugh:
#ifdef TARGET_CPU_PPC
return __lhbrx(ram, address);
#else /* !TARGET_CPU_PPC */
uint32 x = (uint32) * (uint16 *)(ram + address);
return (x << 8) | (x >> 8);
#endif /* !TARGET_CPU_PPC */That's one way to date your code. Who still uses power pcs? This code is 20 years old at least. Edit: Upon reflection I think this belongs in Weird and Wonderful.
Real programmers use butterflies
Ah, little endian and big endian processor handling?
Latest Articles:
DivWindow: Size, drag, minimize, and maximize floating windows with layout persistence -
Ah, little endian and big endian processor handling?
Latest Articles:
DivWindow: Size, drag, minimize, and maximize floating windows with layout persistenceIn this case, yes. Apparently the PowerPC has a specialized instruction for what that routine does.
Real programmers use butterflies
-
I don't think I want to see any
ifdef
s in such software.Me too.
Real programmers use butterflies
-
honey the codewitch wrote:
Who still uses power pcs
NASA, apparently. Their approved space hardened computer is a PPC with a whopping 256 MB of RAM. Space hardening is difficult. EDIT: here's a 2 minute video with the short explanation Why is NASA's New Perseverance Rover Using a 23 Years Old Chipset From The iMac G3? [ PowerPC 750 ] - YouTube[^]
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
den2k88 wrote:
here's a 2 minute video with the short explanation Why is NASA's New Perseverance Rover Using a 23 Years Old Chipset From The iMac G3? [ PowerPC 750 ] - YouTube[^]
Just a guess without seeing it... because they are more reliable than any other current hardware?
M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.
-
In this case, yes. Apparently the PowerPC has a specialized instruction for what that routine does.
Real programmers use butterflies
Hey, If you are looking at a game/graphics library I just want to point out that the Xbox 360 uses the PowerPC instruction set. In fact I think Nintendo Wii-U was using it right up until a few years ago. So not really archeology. :) Best Wishes, -David Delaune
-
Hey, If you are looking at a game/graphics library I just want to point out that the Xbox 360 uses the PowerPC instruction set. In fact I think Nintendo Wii-U was using it right up until a few years ago. So not really archeology. :) Best Wishes, -David Delaune
Wow, I did not know that. That's interesting. I love when I can learn stuff. Thanks!
Real programmers use butterflies
-
Wow, I did not know that. That's interesting. I love when I can learn stuff. Thanks!
Real programmers use butterflies
-
I stumbled upon this in my travels today :laugh:
#ifdef TARGET_CPU_PPC
return __lhbrx(ram, address);
#else /* !TARGET_CPU_PPC */
uint32 x = (uint32) * (uint16 *)(ram + address);
return (x << 8) | (x >> 8);
#endif /* !TARGET_CPU_PPC */That's one way to date your code. Who still uses power pcs? This code is 20 years old at least. Edit: Upon reflection I think this belongs in Weird and Wonderful.
Real programmers use butterflies
You should try APL. It was hot in the 60's and 70's. APL (programming language) - Wikipedia[^]
So many years of programming I have forgotten more languages than I know.