04 March 2023 - 10 March 2023
Table of Contents
- 1. MIT OCW
- 2. Ada/SPARK
- 3. Telechron clock
- 4. Mill Controller #2
- 5. Alum Rock Data Center
- 6. Virtual Orchestra
- 7. gat
- 8. RIOT drivers
- 9. mcd05 32 button/led box
- 10. AMD 2900 bitslice computing
- 11. Hitachi HD68B09E CPU
- 12. Rockwell R65F11
- 13. PLD programming
- 14. EPROM Programming
- 15. POSIT
- 16. MAME
- 17. More project ideas
- 18. David Davies
1. MIT OCW
1.1. 18.03sc (differential equations).
1.1.1. Unit I - Complex Arithmetic and Exponentials
2. Ada/SPARK
2.1. GCC Abandoned
An apparent mismatch between GCC register model and ACK stack model preclues an EM backend. Between fighting byte-addressability and machine models, it appears that working with GCC is a losing battle. Investigating a more direct approach with a standalone GNAT build (like gnat-llvm) with https://github.com/libfirm/libfirm libfirm for parse tree and code generation.
3. Telechron clock
After two failed attempts to fix the clock with modern "replacement" motors (one "drop-in replacement" requited substandial modification and landed up sounding like a meat grinder) - procured a working 1927 Telechron clock and swapped parts. Success!
4. Mill Controller #2
4.1. Mounted on mill - ready or testing
4.2. Need to investigate new HW/SW for eventual replacements
4.2.1. Old crap ain't gonna last forever
4.2.2. Buildroot/Linux 5.15 PREEMPT + latency tools
First pass done - boots on real hardware
4.3. Alternative architecture
4.3.1. Split off stepper motor controller to separate board
Increase latency tolerance on controller
4.3.2. Use emc2 MODBUS/TCP protocol for stepper and other IO
5. Alum Rock Data Center
5.1. need to check rocky, others? (arch?) for suitability
5.2. recheck ALMA, now that CERN and Fermilab are using it
6. Virtual Orchestra
6.1. sfz file tests
6.1.1. need tooling to edit sample files
6.2. increasingly skeptical whether quality results are possible
6.3. maybe should treat as platform for concatinative synthesis
6.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.
7. gat
7.1. spectrogram done - matches 'octave' output
8. RIOT drivers
Implemented - needs testing.
8.1. WS2801
8.2. Velleman KA03
8.3. Velleman KA05
9. mcd05 32 button/led box
9.1. Recovered schematics.
9.2. Planning software.
9.3. Received STM32F767 Nucleo144 with Ethernet.
9.3.1. Test program running.
9.3.2. Need to consider CoAP multicast discovery.
9.3.3. Consider simpler architecture with STM32F767 as a 'hub'.
9.3.4. Consider CAN interface to hub.
10. AMD 2900 bitslice computing
10.1. Probably my oldest uncompleted project
10.2. Exploring possibilities for something constructive
Create verilog models for 2903/2910 and verify against hardware?
11. Hitachi HD68B09E CPU
11.1. RAM/UART/IO
11.2. Started schematic
11.2.1. Standard peripheral set for 8 bit CPU bringups
Board schematic planned - need Kicad symbols
11.3. Arduino Mega 2560 DMA loader
…Along with standard 8 bit loader
11.4. Generate quadrature clock directly
11.5. Full Bus SW Emulation infeasible
6809 1000ns maximum cycle time too short
12. Rockwell R65F11
12.1. Still evaluating.
12.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.
13. 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.
14. EPROM Programming
Found some software for Needham programmer. Need to check electrolytic caps on ISA board.
15. POSIT
Use POSITs for YRX?
16. MAME
16.1. Subset builds in debug mode
Full debug fails - not enough disk or memory.
16.2. gs6809 serial IO doesn't work right with PTY and other streams
16.3. ampro (Z80/Z80SIO) does work with PTY
16.4. Evaluating what is needed for other emulators.
17. More project ideas
17.1. Zuse Z3 simulation in Verilog
Good excuse for floating point ALU design. Try posit format?
17.2. GMPForth ports to simulators
17.2.1. SIMH for some targets (vax)
17.2.2. MAME looks interesting for microprocessor system emulations
How to support ersatz systems?
17.2.3. Ports to classic figFORTH targets
17.3. GMPASM assembler
May be useful for handbuilt and rare systems (DMX1000?).
17.4. Extracting ISO Superboard Forth ROMS for MAME emulation
17.5. 'bwocl' OpenCL tooling
17.5.1. Offline compilation
17.5.2. Standard Kernel Running
17.6. hardware support for classic 5V CPUs
17.6.1. RTX2000, CDP1802 still available!
17.6.2. 6502, 68000, 320C30, others on hand
17.6.3. CPUs with totally async bus may be supportable without RAM
17.6.4. Could use small footprint monitor in asm (gmpmon?)
17.7. Existing 'retro' hardware still working?
17.7.1. OSI Superboard
Unknown. Composite to VGA adapter didn't seem to work. Needs analysis. Found OSI model 610 board underneath!
17.7.2. Super Jolt
No output. Needs analysis.
17.7.3. Ampro Little Board
Not booting. Needs analysis.
17.7.4. Rockwell R65F11 Demo board
UART sending "NO ROM" at 2400 7N1 as expected with 2MHz xtal. MAME emulator possibilities?
17.7.5. NMIX-0016
Works. Found original prom in a parts stash(!).