While going through xgen22 I have noted the following problems(queries) 1) The meaning of (say) Indregmodval is not immediately obvious. Better commenting here would be appreciated. 2) You accept -1 as invalid astackaddr meaning the local pointer invalid. Other Ecode machines use 0 here. 3) You assume that my local pointer from which you grab temporaies contains the params but does not allow for the red tape. This is arbitary ( Imp it contians both). Suggest two further bits allocate in Props to say what is included in this. 4) Your claiming of stackframe space in eprocend does not allow for mode than 12 bits of space. This does occurr from time to time in programs and will cause a very hairy bug. At least abort here. I deal with this case by addint the next highest multiple of 4k. Wastes some space but does at least work. 5) You do not believe the local size at eprocend using the next temporary address if larger. Something is seriously wrong if this is not right and I think you should eabort. This probably put in as a result of confusion caused by what is included in this pointer (My para 3) 6) The smallest code and (apart from the onw word case) fastest way to copy a dislpay is with MVC. 7) With records by value and strings by value it is not safe to assume that the display is within 4096 bytes of r10. You do assume tyhis both when copying it and when using it. 8) Egenerate object is not in the file(only a duumy needed) but is in GEM's file of specs. This really belongs with the Driver but specs & code should be consistent. I am cobbling up an IMP ecode generator to investigate fuirther. I will add to this list if I find any other problems.