This is a general operation question about chip behavior for something like bankswitching. I get the usage of writing to a port/address, and that makes a certain chunk of memory accessible by the cpu and all that. What maintains that state after I make that selection?
For example, looking at UNROM, there are some discrete logic chips for prg banking. I can select a bank number and write it to $8000 (or other suitable address, glossing over details) to map in the prg data I want. As I understand it the bits for that bank number on the corresponding data lines are input for the discrete chips, and the output is tied to the high address lines on the prg rom. So far so good. What happens at the next instructions when I want to read something out of the new prg bank? The bank number value is no longer on the bus right? What keeps the outputs to the high address lines fixed to what I want?
For example, looking at UNROM, there are some discrete logic chips for prg banking. I can select a bank number and write it to $8000 (or other suitable address, glossing over details) to map in the prg data I want. As I understand it the bits for that bank number on the corresponding data lines are input for the discrete chips, and the output is tied to the high address lines on the prg rom. So far so good. What happens at the next instructions when I want to read something out of the new prg bank? The bank number value is no longer on the bus right? What keeps the outputs to the high address lines fixed to what I want?