upvote
Of course, if you have sufficiently simple input devices that could do DMA, then you can do something e.g. IBM 1401 did:

    When the LOAD button on the 1402 Card Read-Punch is pressed, a
    card is read into memory locations 001–080, a word mark is set
    in location 001 to indicate that it is an executable instruction,
    the word marks in locations 002-080 (if any) are cleared, and
    execution starts with the instruction at location 001. [...] To
    read subsequent cards, an explicit Read command (opcode 1) must
    be executed as the last instruction on every card to get the new
    card's contents into locations 001–080.
I imagine the additional wiring on that LOAD button must have been pretty small: the READ functionality already exists in the 1402 device, it also has an output signal that tells when the read is finished (so the 1401 Processing Unit knows when the Read command is done), so you just need to tie that signal into resetting the PC to 1 and then starting the clock.
reply
The pictures of workers weaving a program into core rope memory is peak steampunk vibes.
reply
Weaving and computing are closely intertwined
reply