@phooky 19 pages, can be borrowed at https://archive.org/details/highcrimesmisdem00gree for an hour.
It's hard to find-- I don't think it exists online at all-- but I reread Joanne Greenberg's "Certain Distant Suns" again today, and it remains imo the best short story ever written. It was published in "High Crimes and Misdemeanors", but I found it in Alberto Manguel's "Black Water" anthology; both long out of print, neither available at my library.
Good news: the 299s are fast enough.
This project is driving me insane and I'm just going to do some art instead for a while.
#a2pico
I'm still not sure whether to give up on this project or not. If I'm reading the datasheet right, the 74ACT299s *should* be fast enough for me to squeeze out the additional 16 cycles I need to make this work, but I'm having trouble getting them to go that fast. I'll mess around when I get some time. #a2pico
Basically I could save myself a ton of grief by just using '245s instead of '299s. I *may* lose the ability to do DMA transfers, though...
david's number is an irrational number that can be calculated to arbitrary precision as follows:
take the currently known decimal digits of david's number, then publish them as well as any more digits in a public place with a publicly verifiable timestamp (eg a fedi post. please don't use a blockchain) using the format: "#DavidsNumber is 0.7"
david's number is defined as whatever the most recent of these posts defines it as, provided that post used the correct previously calculated digits of david's number
woo, rabbit hole
Just was reminded of this particular pile of woo:
https://arkcrystals.com/
So I moved the "interesting event" filter to c1, and everything righted itself instantly.
I guess the moral of the story is, "keep an eye on your pipelines"?
So I removed the conditional jump from sm0, so that c0 could examine the bus lines and decide when to report an access. Everything exploded. Random addresses being reported, c1/sm0 lockups, ugh. What was happening?
What was happening was that now sm0 was blasting out addresses at 1MHz, and the very first time c0 tried to report an event, it called printf to USB. Which takes a couple of ms. Which meant the c1->c0 fifo filled up. Which meant the sm0->c1 buffer filled up. (con't)
A microcontroller debugging story:
I have ARM core 0 (c0) talking to my laptop over USB, reporting useful events. ARM core 1 (c1) just sets up the address bus PIO state machine (sm0) and sends the data along to c0 so it can report anything interesting. Fine. I had set up a jump in sm0 to skip sending the address data unless DEVSEL was pulled low on the bus. This all worked perfectly. Now I wanted to be able to detect IOSEL low events as well. (cont'd)
#a2pico
Looking after two small children during a pandemic. Squishes entire interior life into last two hours of the day. Presume that everything here is written in a distracted haze. Hardware, software, linocut, trying to build a website after a couple decades away.