If I use the sample code: *((WORD huge *)0xf1236) = 10; The assembly code generated is: mov r4,#10 exts #fh,#1 mov dpp0:0x1236,r4 When this code executes within a class b trap handler, the memory location being written appears to be 0x01236, but if I execute the same code outside of a trap, the memory location changed is 0xf1236. Is there a C167 issue that anyone is aware of which could cause the segment override to fail in trap routines?