The actual news release has a bit more information.
The team discovered that a single chip responsible for storing a portion of the FDS memory — including some of the FDS computer’s software code — isn’t working. The loss of that code rendered the science and engineering data unusable. Unable to repair the chip, the team decided to place the affected code elsewhere in the FDS memory. But no single location is large enough to hold the section of code in its entirety.
So they devised a plan to divide the affected code into sections and store those sections in different places in the FDS. To make this plan work, they also needed to adjust those code sections to ensure, for example, that they all still function as a whole. Any references to the location of that code in other parts of the FDS memory needed to be updated as well.
That's incredible. It also reminds me of the episode of Star Trek Deep Space 9 where they need to find space to store a bunch of people's transporter patterns, so they just dump them into the stations computer, replacing everything that used to be there lol
It interesting that the memory is so discrete that it can be reprogrammed when a single ROM fails. And it’s really neat that they made the whole thing accessible to a radio controlled boot loader. The planning that went into building and maintaining Voyager is really incredible.
I wonder if we could still build one as robust these days?
Im guessing it could still listen just not talk back
Edit read the article
Although the radio signal from the spacecraft had never ceased its connection to ground control operators on Earth during the computer problem, that signal had not carried any usable data since
I know that this is supposed to be a joke, and I do find it funny, but I also find it sad that it carries a large dose of truth. C is such a "low-level" high-level language that it makes you deal directly with memory allocation and management as well as pointer arithmetic to advance addresses in the stack, which in my opinion is very important for programmers to gain an understanding of the actual hardware and architecture their programs are running on, because I feel that many don't have that understanding. Should Rust replace C in many applications, especially low-level, I fear that we will ultimately end up with worse code because of that. (BTW I know that Voyager's program is not written in C, this is just purely about your statement on Rust.)