Purpose: LDA (fetvec),Y from any bank
Call address: $FF74 (hex) 65396 (decimal)
Preparation:
Registers: .A = pointer to address .X = bank (0-15) .Y = index Memory: setup indirect vector Flags: none Calls: noneResults:
Registers: .A = data .X used Memory: none Flags: status valid
Description: INDFET enables applications to read data from any other bank. It sets up FETVEC ($2AA), calls GETCFG to convert the bank number, and JMPs to code in common (shared) RAM at $2A2 which switches banks, loads the data, restores the user's bank, and returns. When calling a non-system bank, the user should take necessary precautions to ensure that interrupts (IRQ's and NMI's) will be handled properly (or disabled beforehand).
EXAMPLE:
LDA #$00 ;setup to read $2000 STA $FA LDA #$20 STA $FB LDA #$FA LDX #$01 ;in bank 1 LDY #$00 JSR $FF74 ;LDA ($FA,RAM 1),Y BEQ etc