In classic spend-an-hour-to-save-five-minutes efficiency, I'm hand-coding 48-bit horizontal microcode... in octal!

(and sometimes the bits are inverted!)

20 7020 25 10 6 1 1 0 1 2 2 356 0 3 - SetDDS: R21 := 10, StackReset, loc(7020); ! Increment display
! X : ALU dest register is R25
! Y : Y source is the lower eight bits of a constant (8) (not a long constant load? so upper bits 0)
! A : AMUX input is the X register
! B : BMUX input is a constant value
! W : ALU output IS written to any register
! H : DMA requests are enabled (seems used only in special cases)
! AL: ALU function is identity(BMUX)
! F : Combines with SF=2 to mean StackReset
! SF: Combines with F∈{0,2} to mean StackReset (does which matter in some other way?)
! Z : Probably fills JMUX<7> thru JMUX<0> for a short jump (active low!)
! CN: Select the "true" condition to pass along to the sequencer
! JP: Sequencer should execute a conditional jump
! VT: Not a real field: the jump target VA

#PERQ

45 days until #RetroFest 2026 in Swindon. #PERQ status:

  • Flaky Z80-based I/O subsystem: sometimes the #Z80 jumps off the tracks and executes nonsense code
  • Disk boots fail: the microcode attempts to load blocks far beyond the end of the disk

Trying today: DIY diagnostic microcode

POV: #PERQ hardware debugging, as usual. The #Z80 (serving as an I/O coprocessor) is behaving strangely: fetching instruction bytes without toggling the M1 pin, jumping to random locations at around 47uS after coming out of reset; what's going on here?
@wec good luck, I look forward to any updates about your progress that you share! I do also hope that continued research into the 37T will reveal some way (e.g. by a software emulator) to run EM/YMS someday: as a #PERQ botherer I am so curious about what @d_j_fitzgerald suggested was (something like) IBM's answer to the PERQ.
Developing technique for "disk baking". The box is a filament dryer for 3-D printing, and the disk "bakes" inside at 55 °C for six hours in an attempt to stabilise the degraded binder that holds the magnetic oxide to the PET substrate. This disk is one of several 8" floppies for #PERQ shared with me by another Mastodon person --- thanks! (So far I've mainly recovered floppies you can already find on Bitsavers, but the as-yet-unarchived ones will be tackled soon.)
Meanwhile, the #PERQ has broken once again. A problem somewhere on the EIO board again, affecting floppy and hard drive both, but only after some data have been loaded from them. DDS=157 or 158 on HDD or FDD boots of POS respectively. PERQs gonna PERQ...

Handy: it looks like it works fine to replace a PAL16R8 with a GAL16V8 (at least a GAL16V8D, -15) as the DCD2 chip on a #PERQ 2T2's DIB.

I was able to reuse the old, singed DCD2 label from the original PAL... which I might have plugged in backwards one day...

I am an unabashed pixel slut. Annual cleaning jag complete: dust bun^Wrhinos rounded up, keyboards de-grossified, cable tangling gremlins thwarted again (for now). The next challenge is to get four *actual* #PERQ screens lit up to go with these four emulated ones. (And you thought AI datacenters were driving up your electric rates. Ha!)
Just in time for #PERQtober ! An adapter to replace your missing or broken #PERQ T2 landscape monitor with a VGA display. Thanks to @skeezicsb for early advice.