04 November 2023 - 10 November 2023
Table of Contents
- 1. MIT OCW
- 2. wood chips
- 3. SCZ Front Step
- 4. Abby
- 5. Tuffy
- 6. Piper
- 7. Next arch installs
- 8. amdgpu gcn assembly framework started
- 9. quilt block rearrangement
- 10. EPLDH
- 11. wktpqb
- 12. Compilers
- 13. Mill Controller #2
- 14. Alum Rock Data Center
- 15. CA Root Key Generation
- 16. Virtual Orchestra
- 17. gat
- 18. RIOT drivers
- 19. mcd05 32 button/led box
- 20. AMD 2900 bitslice computing
- 21. Hitachi HD68B09E CPU
- 22. Rockwell R65F11
- 23. PLD programming
- 24. EPROM Programming
- 25. POSIT
- 26. MAME
- 27. More project ideas
- 28. David Davies
1. MIT OCW
1.1. 18.03sc (differential equations).
1.1.1. Unit IV - Matrix Methods: Eigenvalues and Normal Modes
2. wood chips
Continuing.
3. SCZ Front Step
3.1. Need to take door sill to SJ to clean up
Need to rotate tablesaw to accomodate.
4. Abby
4.1. Arch installed
4.2. Slurm install was a PITA
Alder Lake asymmetric P/E cores not well handled by slurm. Probably not worth it to continue this direction.
5. Tuffy
5.1. Arch installed.
6. Piper
6.1. Arch installed.
Piper UEFI Bios only allows signed bootloader; so arch and debian 12 installs weren't bootble. Alma Linux would not even install (so centos stream wasn't even tried). CentOS 7 was bootable, so a minimal installation was kept and uses grub to chain load limine to boot arch. This may have been luck. My understanding is that UEFI signed grub at some point disallowed chain loading unsigned EFI executables (make sense, really). Definitely a Rube Goldberg arrangement. 50G bootloader.
7. Next arch installs
7.1. M22 (AMD kavari box)
7.2. Various i686
Let's see how the 32 bit version works!
8. amdgpu gcn assembly framework started
It's disappointing how poor the compute support is for AMD integrated GPUs. OpenCL and OpenMP offload both crash X driver on Kiki with amdgpu driver complaints. Simple GCN assembly example does work, so this effort somewhat restarts the old kaveri 'kmtrun' concept. Working example HSA API loader in C++ is being reverse-engineered to nice, clean, generalized C code.
9. quilt block rearrangement
Another 'falling charms' quilt top needs arrangement. The existing 'quilt-block' arranger failed to find a solution, so perhaps it's time for a high performance simulated annealing approach instead of the ruby shuffle.
10. EPLDH
10.1. MPFI interval arithmetic better alternative
11. wktpqb
11.1. Verifying edge construction (con't.)
11.2. 'gcd' algorithm doesn't work
12. Compilers
12.1. Started hand written WSN parser
13. Mill Controller #2
13.1. Mounted on mill - ready or testing
13.2. Need to investigate new HW/SW for eventual replacements
13.2.1. Old crap ain't gonna last forever
13.2.2. Buildroot/Linux 5.15 PREEMPT + latency tools
First pass done - boots on real hardware
13.3. Alternative architecture
13.3.1. Split off stepper motor controller to separate board
Increase latency tolerance on controller
13.3.2. Use emc2 MODBUS/TCP protocol for stepper and other IO
14. Alum Rock Data Center
14.1. Use Arch linux
Thanks to niece Danielle for consultation.
15. CA Root Key Generation
Nice to have an appliance that manages keys. Could just buy something from nitrokey https://www.nitrokey.com/
15.1. Need to be clear on security properties.
Definitely protect against remote access to private keys. How strong does the protection against local access need to be?
15.2. Simple hardware.
15.3. USB Serial interface only but no credentials across USB I/F.
But this potentially exposes the hardware to remote access via the USB I/F when connected.
15.4. Use Sneakernet
Using "disk drive" IO introduces air gap - remote access impossible. Increases attack surface via filesystem manipulation. But use signed requests, so attacks would have to be insider requests.
15.5. Beagleboard
Found in SCZ. Thought it was in SJ.
15.6. LCD Touchscreen
Unlocks encrypted filesystem. Maybe not needed. See below.
15.7. Morse code PIN
Only need ONE button, and a pass/fail LED. Hardware will never go EOL (Thanks Elena!). Susceptible to remote audio recording of PIN button noise, which could be overcome by using 2FA. Again - what am I protecting against?
15.8. Telephone Keypad or some such
May be more straightforward.
15.9. Encrypted Filesystem
For sensitive material only.
16. Virtual Orchestra
16.1. sfz file tests
16.1.1. need tooling to edit sample files
16.2. increasingly skeptical whether quality results are possible
16.3. maybe should treat as platform for concatinative synthesis
16.4. maybe should just accept the limitations and work with it
One should not be disappointed that a guitar can't sound like a flute.
17. gat
17.1. spectrogram done - matches 'octave' output
18. RIOT drivers
Implemented - needs testing.
18.1. WS2801
18.2. Velleman KA03
18.3. Velleman KA05
19. mcd05 32 button/led box
19.1. Recovered schematics.
19.2. Planning software.
19.3. Received STM32F767 Nucleo144 with Ethernet.
19.3.1. Test program running.
19.3.2. Need to consider CoAP multicast discovery.
19.3.3. Consider simpler architecture with STM32F767 as a 'hub'.
19.3.4. Consider CAN interface to hub.
20. AMD 2900 bitslice computing
20.1. Probably my oldest uncompleted project
20.2. Exploring possibilities for something constructive
Create verilog models for 2903/2910 and verify against hardware?
21. Hitachi HD68B09E CPU
21.1. RAM/UART/IO
21.2. Started schematic
21.2.1. Standard peripheral set for 8 bit CPU bringups
Board schematic planned - need Kicad symbols
21.3. Arduino Mega 2560 DMA loader
…Along with standard 8 bit loader
21.4. Generate quadrature clock directly
21.5. Full Bus SW Emulation infeasible
6809 1000ns maximum cycle time too short
22. Rockwell R65F11
22.1. Still evaluating.
22.2. Dev board
Reverse engineered some of a mostly fully built development board with one part missing. As near as I can tell, that one part is some sort of programmable address decoder with a pinout that does not correspond to any part I can find. Kind of like a GAL but with inputs on top and outputs on bottom (as opposed to left and right in a standard GAL). I have no idea what the provenance of this board is and if it ever worked.
23. PLD programming
Looks like Atmel 16V8 is the last 5V PLD part left standing. Maybe not surprising that there still doesn't appear to be a fully open source tool chain for programming. How hard could it be? (!) Could next-pnr generic help? Might be easier to use espresso for logic array and program output logic bits directly for simple stuff.
24. EPROM Programming
Found some software for Needham programmer. Need to check electrolytic caps on ISA board.
25. POSIT
25.1. Use POSITs for YRX?
No. Existing library is fine.
26. MAME
26.1. Subset builds in debug mode
Full debug fails - not enough disk or memory.
26.2. gs6809 serial IO doesn't work right with PTY and other streams
26.3. ampro (Z80/Z80SIO) does work with PTY
26.4. Evaluating what is needed for other emulators.
27. More project ideas
27.1. Zuse Z3 simulation in Verilog
Good excuse for floating point ALU design. Try posit format?
27.2. GMPForth ports to simulators
27.2.1. SIMH for some targets (vax)
27.2.2. MAME looks interesting for microprocessor system emulations
How to support ersatz systems?
27.2.3. Ports to classic figFORTH targets
27.3. GMPASM assembler
May be useful for handbuilt and rare systems (DMX1000?).
27.4. Extracting ISO Superboard Forth ROMS for MAME emulation
27.5. 'bwocl' OpenCL tooling
27.5.1. Offline compilation
27.5.2. Standard Kernel Running
27.6. hardware support for classic 5V CPUs
27.6.1. RTX2000, CDP1802 still available!
27.6.2. 6502, 68000, 320C30, others on hand
27.6.3. CPUs with totally async bus may be supportable without RAM
27.6.4. Could use small footprint monitor in asm (gmpmon?)
27.7. Existing 'retro' hardware still working?
27.7.1. OSI Superboard
Unknown. Composite to VGA adapter didn't seem to work. Needs analysis. Found OSI model 610 board underneath!
27.7.2. Super Jolt
No output. Needs analysis.
27.7.3. Ampro Little Board
Not booting. Needs analysis.
27.7.4. Rockwell R65F11 Demo board
UART sending "NO ROM" at 2400 7N1 as expected with 2MHz xtal. MAME emulator possibilities?
27.7.5. NMIX-0016
Works. Found original prom in a parts stash(!).