Infineon User's Manual, 12.96 Version 1.0 p. 8-18 has bit field (BTYP) '11: 16-bit Multiplexed Bus'. But startup.a66 (line 55 has '; 3 = 16 Bit Non Multiplexed'. Please explain.
The startup code provided in STARTUP.A66 is intended to be used with the C166 microcontrollers. The START167.A66 is intended for use with most all other C16x (C167, C165, C164, C163, and C161) devices. The BUS configuration from START167.A66 is:
; BTYP0: External Bus Configuration Control (BUSCON0.6 .. BUSCON0.7): _BTYP0 EQU 2 ; 0 = 8 Bit Non Multiplexed ; ; 1 = 8 Bit Multiplexed ; ; 2 = 16 Bit Non Multiplexed ; ; 3 = 16 Bit Multiplexed ;
; BTYP: External Bus Configuration Control (SYSCON.7 .. SYSCON.6): ; Note: These bits are only valid if _BUSACT == 1. _BTYP EQU 3 ; 0 = 8 Bit Non Multiplexed ; ; 1 = 8 Bit Multiplexed ; ; 2 = 16 Bit Multiplexed ; ; 3 = 16 Bit Non Multiplexed ;
I see the difference between '2' and '3' now. The misunderstanding occurred because a Keil support engineer told me that I should be using startup.a66, even though I had specifically mentioned C161O in my email to him. (In addition to your time and Mike's, this wasted my time when I modified startup.a66.)