A keyboard matrix is a grid of wires interconnected by physical switches (buttons), such as the Address and Data lines forming the 5×8 grid in the Spectrum. Each Key is a button that intersects one row with one column (the crosses on the grid) and all the buttons are physically held open by default. This means that the rows and columns are not connected and no current (or voltage) is passed from a row to a column or vice versa.
When dealing with multiple connections that operate in parallel on a single circuit (such as keyboard matrices or an RGB LED), the convention is to have everything high by default and look for something going low as your triggered response. This is because if you have everything low and turn one thing high (left image below), current disperses and depending on your circuit can cause erroneous signalling and under-current issues. This can make controllers and sensitive components fault or reset. You can see below an example of how this might happen, if you pressed three buttons on a matrix:
In the left image you can see that all the lines are low (black). Because the resistors keep the rows at 0V by default, this is a pull-down configuration. A vertical line is held high to activate that column of buttons (+5V introduced) and three buttons are pressed simultaneously. Current is passed along two lines and two columns and is at best halved by the parallel resistors on the rows.
On the right you can see a pull-up configuration, because the resistors hold the rows high. When the vertical line is held low and the same three buttons are pressed; all that happens is that the rows all remain high, which in turn hold the second column high. Most microcontrollers (including Arduino) have over-current protection, so this shouldn’t cause any faults.
Either configuration has pros and cons and both are commonly used in button matrices. Since the second (pull-up) matrix is how the original Spectrum keyboard worked and we know the Arduino can stand multiple button presses in that scenario, that’s the one we’ll use.