Daily Archives: 2020-08-14

I let WordPress update itself and am hitting a bug with image aspect ratio, it appears to be a known regression that was pushed in a release, even though I’m running an unmodified theme from upstream.I don’t have the time … Continue reading

Posted on by pappp | Leave a comment

Epic’s battle for “open platforms” ignores consoles’ massive closed market

Source: Ars Technica

Article note: But... publishers and consumers have been fighting that fight with the console vendors since at least the mid 80s, from Tengen and the Nintendo CIC, through the constant legal and technical battles around console-hacking that continue to be a good show today. Epic (who are frankly not my favorites, but if they want to spend the enormous resources required to do something about the problem, awesome) is trying to prevent a spread of locked-down, vendor-controlled appliance computers, and the right-to-read style open computing advocates should be pleased they are doing it.
Epic’s battle for “open platforms” ignores consoles’ massive closed market

Enlarge (credit: Aurich Lawson / Getty Images)

Yesterday, Epic used Fortnite to essentially wage open war against Apple's and Google's mobile app marketplaces. First it added a discounted "Epic Direct Payment" option alongside the standard iOS App Store and Google Play payment options in Fortnite, in direct violation of those stores' policies.

Then, when Fortnite was predictably removed from both platforms, Epic filed lawsuits against both companies, alleging "anti-competitive restraints and monopolistic practices" in the mobile app marketplace. That move came alongside a heavy-handed PR blitz, including a video asking players to "join the fight to stop 2020 from becoming '1984.'"

But through this entire public fight for "open mobile platforms," as Epic puts it, there is one major set of closed platforms that the company seems happy to continue doing business with. We're speaking, of course, about video game consoles.

Read 21 remaining paragraphs | Comments

Posted in News | Leave a comment

PIC32 DMA is a Weird Machine

Source: Hack a Day

Article note: That's just neat.

Direct memory access (DMA) systems in computers are more powerful than you might think, and [Bruce Land] and [Joseph Primmer] have done some clever hacking to take full advantage of this on the PIC32 microcontrollers. This is a cool proof-of-concept hack — you can do general computing in the DMA subsystem without using the CPU at all if you don’t mind taking your time — but they also include two useful examples: a direct digital synthesis machine and a random number generator. Both of these run using exactly 0% CPU time.

How do they do it? DMA is a mechanism for shuttling data around in memory or between hardware peripherals without involving the CPU. Say you want to take a large block of memory containing music, and spit it out slowly to an I2S audio converter. A DMA subsystem could be configured to take an interrupt from the sound chip, pass it a chunk of data, increment the data pointer, and wait for the next interrupt.

The gimmick, which goes back at least to [Rushanan] and [Checkoway]’s “Run DMA” paper, is that you can modify the memory source and destination addresses of one DMA service from another DMA service, and that some registers automatically perform mathematical operations on whatever data is put into them. Combine these together, and you’ve got transport-triggered programming.

(An awesome side-note: our own [Al Williams] developed a one-instruction transport-triggered CPU way back in the day: the One Instruction Wonder.)

What is this good for? Writing simple helper applications that run independent of the CPU on a PIC32 microcontroller. [Land] and [Primmer]’s direct-digital synthesis example is a great one. But there are a lot of cases where you simply want to take in some new data and pre-process it a little bit before it enters the main program flow. While creating weird machines in the DMA engine might be a slower way to get it done, it keeps the CPU free for doing other stuff. We’re sure you’ll come up with something.

Posted in News | Leave a comment

PIC32 DMA is a Weird Machine

Source: Hack a Day

Article note: That's just neat.

Direct memory access (DMA) systems in computers are more powerful than you might think, and [Bruce Land] and [Joseph Primmer] have done some clever hacking to take full advantage of this on the PIC32 microcontrollers. This is a cool proof-of-concept hack — you can do general computing in the DMA subsystem without using the CPU at all if you don’t mind taking your time — but they also include two useful examples: a direct digital synthesis machine and a random number generator. Both of these run using exactly 0% CPU time.

How do they do it? DMA is a mechanism for shuttling data around in memory or between hardware peripherals without involving the CPU. Say you want to take a large block of memory containing music, and spit it out slowly to an I2S audio converter. A DMA subsystem could be configured to take an interrupt from the sound chip, pass it a chunk of data, increment the data pointer, and wait for the next interrupt.

The gimmick, which goes back at least to [Rushanan] and [Checkoway]’s “Run DMA” paper, is that you can modify the memory source and destination addresses of one DMA service from another DMA service, and that some registers automatically perform mathematical operations on whatever data is put into them. Combine these together, and you’ve got transport-triggered programming.

(An awesome side-note: our own [Al Williams] developed a one-instruction transport-triggered CPU way back in the day: the One Instruction Wonder.)

What is this good for? Writing simple helper applications that run independent of the CPU on a PIC32 microcontroller. [Land] and [Primmer]’s direct-digital synthesis example is a great one. But there are a lot of cases where you simply want to take in some new data and pre-process it a little bit before it enters the main program flow. While creating weird machines in the DMA engine might be a slower way to get it done, it keeps the CPU free for doing other stuff. We’re sure you’ll come up with something.

Posted in News | Leave a comment