BL51 User's Guide

IBANKING Linker Directive

Abbreviation

IB

Arguments

IBANKING 〚(bank_sfr_address)〛

Default

The default bank_sfr_address is 0x94. This is also the SFR address for the supported Infineon devices.

µVision

Options — Lx51 Misc — Misc Controls — enter the control.

Description

The IBANKING directive specifies that the linker use the on-chip code banking hardware of the Mentor M8051EW core, the Infineon SDA30C16x/26x, and the Micronas SDA555x devices.

When this directive is specified, the linker places all code segments without a ?CO prefix or suffix into the bank area. Segments with a ?CO prefix or suffix are placed in the common area. The L51_BANK.A51 code banking configuration file is not used. The linker generates a jump table with the following format:

MOV    bank_sfr, #BANK_NUMBER
LJMP   target

Note

  • Using code banking with the IBANKING directive requires special run-time libraries (named C51M*.LIB) that are automatically selected when you specify the IBANKING directive.
See Also

BANKAREA, NOAJMP, NOINDIRECTCALL, NOJMPTAB

Example
BL51 BANK0 {MODULA.OBJ}, BANK1 {MODULB.OBJ} IBANKING

BL51 BANK0 {MODULA.OBJ}, BANK1 {MODULB.OBJ} IB (80H)