10 February 2024 - 16 February 2024
Table of Contents
- 1. MIT OCW
- 2. wood chips
- 3. SCZ Front Step
- 4. Compilers
- 5. Github project analysis
- 6. Piper dovecot
- 7. Various i686
- 8. piper
- 9. Buffalo WZR-HP-G300NH
- 10. SJC weather station
- 11. opencl
- 12. EPLDH
- 13. wktpqb
- 14. Mill Controller #2
- 15. Alum Rock Data Center
- 16. CA Root Key Generation
- 17. Virtual Orchestra
- 18. gat
- 19. RIOT drivers
- 20. mcd05 32 button/led box
- 21. AMD 2900 bitslice computing
- 22. Hitachi HD68B09E CPU
- 23. Rockwell R65F11
- 24. PLD programming
- 25. EPROM Programming
- 26. POSIT
- 27. MAME
- 28. More project ideas
- 29. David Davies
1. MIT OCW
1.1. 18.06sc (Linear Algebra)
1.1.1. Unit I - Factorization into A = LU
2. wood chips
Rainy.
3. SCZ Front Step
No progress. Wet, Rainy…
4. Compilers
4.1. Work out overall plan.
Lots of moving pieces.
4.2. Looking into LLVM MLIR.
Will not use immediately, but perhaps trend in that direction.
4.3. ASDL
4.3.1. current smlnj C++ implementation incomplete
4.3.2. old versions asdl source fail to build with new versions of smlnj
4.3.3. old versions of smlnj not easily buildable on x8664
4.3.4. ancient binary of asdl 1.2 compiler seems to work
but associated libraries are to old to link because of missing ctype symbol
4.3.5. analyzing asdl 1.2 generated code
Most of the code is for serialization, which is going to be replaced anyway, so can be removed by hand.
5. Github project analysis
Based on compiling asdl sources and previous experiences of compiling various github projects, an automated analysis of github projects was started. Have a dataset of 1657 projects, of which 196 were easily compilable, 128 failed to build. Not sure where to go with this next.
5.1. results
Status | # | Note |
---|---|---|
SKIP | 939 | Project not in a form to easily compile |
CONF | 247 | Project failed in configuration (1) |
FAIL | 275 | Project failed to compile (2) |
PASS | 196 | Project 'make' ran to completion |
Total | 1657 |
5.1.1. Note (1)
Some failures were because of missing system dependencies, and some were because of errors in the configuration files. Breakdown not analyzed.
5.1.2. Note (2) Breakdown of build failures
Reason | # | Note |
---|---|---|
Build | 128 | Code error |
Dep | 129 | Missing system dependency |
Interactive | 18 | Build required user interaction |
6. Piper dovecot
Update broke dovecot auth. Looks PAM related, but PAM update failed to fix. Flummoxed as to what to do next. mailx works in the meantime. Questioning whether a webmail client is worth the hassle - does it really need to be this complicated?
7. Various i686
7.0.1. netbsd
installed. (but on what? - now can't remember).
7.0.2. buildroot
builds complete.
8. piper
8.1. dovecot
8.1.1. Raising apparmor error.
Not sure how to resolve.
8.2. pidgeonhole
8.2.1. procmail replacement.
8.2.2. Considering integration.
8.3. httpd
8.3.1. Still stable.
But seems to occassionally mis-serve files.
8.4. SSL cert
Trying letsencrypt with certbot. http problem above may be interfering.
8.5. redmine
Still not sure I want to go down this rabbit hole.
8.6. openvpn
Need to consider cert construction.
9. Buffalo WZR-HP-G300NH
9.1. Update
Sometime next year.
10. SJC weather station
10.1. Still having wireless connectivity problems
Need 20m cable.
10.2. Really Really should put CPU in a proper enclosure
11. opencl
11.1. Studying. Have some examples working.
11.2. Need to look at arrayfire as an alternative.
11.3. This is a bit of a hammer looking for a nail.
12. EPLDH
12.1. MPFI interval arithmetic better alternative
13. wktpqb
13.1. needs a new approach
13.2. Verifying edge construction (con't.)
13.3. 'gcd' algorithm doesn't work
14. Mill Controller #2
14.1. Mounted on mill - ready or testing
14.2. Need to investigate new HW/SW for eventual replacements
14.2.1. Old crap ain't gonna last forever
14.2.2. Buildroot/Linux 5.15 PREEMPT + latency tools
First pass done - boots on real hardware
14.3. Alternative architecture
14.3.1. Split off stepper motor controller to separate board
Increase latency tolerance on controller
14.3.2. Use emc2 MODBUS/TCP protocol for stepper and other IO
15. Alum Rock Data Center
15.1. May have problem with network power module.
It's only 30 years old or something like that.
15.2. Added Ethernet card to tuffy
Should prepare as backup server.
16. CA Root Key Generation
Nice to have an appliance that manages keys. Need to make this simple. Really don't have time for a science project. Could just buy something from nitrokey https://www.nitrokey.com/ But I really don't want to spend money on it of I have hardware already.
16.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?
16.2. Simple hardware.
16.2.1. Use some modern device TPM
Need to export data for backup.
16.2.2. Or something that uses PKCS11 interface
16.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.
16.4. Use Sneakernet
Doesn't scale. Should use something so cert updates are automatable. But that's a science project it seems.
17. Virtual Orchestra
17.1. sfz file tests
17.1.1. need tooling to edit sample files
17.2. increasingly skeptical whether quality results are possible
17.3. maybe should treat as platform for concatinative synthesis
17.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.
18. gat
18.1. spectrogram done - matches 'octave' output
19. RIOT drivers
Implemented - needs testing.
19.1. WS2801
19.2. Velleman KA03
19.3. Velleman KA05
20. mcd05 32 button/led box
20.1. Recovered schematics.
20.2. Planning software.
20.3. Received STM32F767 Nucleo144 with Ethernet.
20.3.1. Test program running.
20.3.2. Need to consider CoAP multicast discovery.
20.3.3. Consider simpler architecture with STM32F767 as a 'hub'.
20.3.4. Consider CAN interface to hub.
21. AMD 2900 bitslice computing
21.1. Probably my oldest uncompleted project
21.2. Exploring possibilities for something constructive
Create verilog models for 2903/2910 and verify against hardware?
22. Hitachi HD68B09E CPU
22.1. RAM/UART/IO
22.2. Started schematic
22.2.1. Standard peripheral set for 8 bit CPU bringups
Board schematic planned - need Kicad symbols
22.3. Arduino Mega 2560 DMA loader
…Along with standard 8 bit loader
22.4. Generate quadrature clock directly
22.5. Full Bus SW Emulation infeasible
6809 1000ns maximum cycle time too short
23. Rockwell R65F11
23.1. Still evaluating.
23.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.
24. 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.
25. EPROM Programming
Found some software for Needham programmer. Need to check electrolytic caps on ISA board.
26. POSIT
26.1. Use POSITs for YRX?
No. Existing library is fine.
27. MAME
27.1. Subset builds in debug mode
Full debug fails - not enough disk or memory.
27.2. gs6809 serial IO doesn't work right with PTY and other streams
27.3. ampro (Z80/Z80SIO) does work with PTY
27.4. Evaluating what is needed for other emulators.
28. More project ideas
28.1. Zuse Z3 simulation in Verilog
Good excuse for floating point ALU design. Try posit format?
28.2. GMPForth ports to simulators
28.2.1. SIMH for some targets (vax)
28.2.2. MAME looks interesting for microprocessor system emulations
How to support ersatz systems?
28.2.3. Ports to classic figFORTH targets
28.3. GMPASM assembler
May be useful for handbuilt and rare systems (DMX1000?).
28.4. Extracting ISO Superboard Forth ROMS for MAME emulation
28.5. 'bwocl' OpenCL tooling
28.5.1. Offline compilation
28.5.2. Standard Kernel Running
28.6. hardware support for classic 5V CPUs
28.6.1. RTX2000, CDP1802 still available!
28.6.2. 6502, 68000, 320C30, others on hand
28.6.3. CPUs with totally async bus may be supportable without RAM
28.6.4. Could use small footprint monitor in asm (gmpmon?)
28.7. Existing 'retro' hardware still working?
28.7.1. OSI Superboard
Unknown. Composite to VGA adapter didn't seem to work. Needs analysis. Found OSI model 610 board underneath!
28.7.2. Super Jolt
No output. Needs analysis.
28.7.3. Ampro Little Board
Not booting. Needs analysis.
28.7.4. Rockwell R65F11 Demo board
UART sending "NO ROM" at 2400 7N1 as expected with 2MHz xtal. MAME emulator possibilities?
28.7.5. NMIX-0016
Works. Found original prom in a parts stash(!).