How? Sequence would be Power on switch - turn ON. Pause/halt computer to ON - ( ie computer is now not operating instructions but when pause/halt switch is reverted it will start to ....)
Now use hard ware to directly write data to a nominated memory address. This hardware could be permanently included in computer circuitry or temporarily connected.
This hardware would have entry switches ( could be simple switches( on switch for each binary bit ) OR BCD encoded ( rotary? switch ) to enter the memory address and data.
The person entering the program would need to be familiar of the memory map of the computer / processor. Ie it may need certain (interrupt/reset/restart) vectors , start addresses set correctly
Person would enter address and data and then press a switch that would cause the data to be written to the address nominated by switches.
Would be laborious to enter the needed few hundred bytes but would be possible.
Could be other included switches to make this memory write protected etc ...
Sorry if the above is a bit confusing .....
I've seen a lot of hand-waving explanations of how boot-strapping happens (and granted it is very implementation-specific) but this is delightfully complete without veering off into the rough.
Interface schematic
Architecture reference AND AVR Binary output reference for programming
Achievable
Fun!The next step up is to use a hex keypad to enter 16 bits at a time. Some single board computers from the 1970's provided this. It was marginally practical - I used to enter programs of a couple of hundred bytes into a KIM-1 this way, it only took a few minutes.
Those computers did provide a simple monitor in ROM to support this, but that code was very small - Steve Wozniak's Wozmon monitor for the Apple I was 256 bytes. You could probably design some circuitry not much more complicated than in this article to replace its row of switches with a keypad.
We had devices like those in university, left from previous generations where they'd manually program Z80s ROM by hand through switches and see the output on LEDs.
Then programing(not the correct term) CPLDs via obscure programming languages and some MS-DOS tool via the parallel port.