Here is some history trivia.
Some of the earliest firmware was on core rope memory.
The Block II Apollo Guidance Computer (AGC) used 72 kb of core rope memory (placed within one cubic foot).
http://en.wikipedia.org/wiki/Rope_memory
It took months to weave the memory... and people complain about compile times today XD.
https://www.youtube.com/watch?v=P12r8DKHsak&t=20s