TMPLee@DOCKMASTER.NCSC.MIL (02/03/90)
Does anyone know if the updated TML Pascal handles byte and character operations better than version 1.50a? I dissassembled a little of the code 1.50a generates and even though you have something defined as a byte or a character it takes up two bytes and uses sixteen bit operands (despite the fact that the manual says that a variable of type byte is supposed to only take up one byte, admitting that a character takes up two). This includes referencing through a pointer to type byte. If you work very hard and define something as an array of packed bytes (e.g., var a:packed array [1..1] of byte) you do get the data to take up only one byte and stores ARE made in 8-bit mode (you see SEP and REP surrounding them) but data fetches are still 16 bit reads. The latter makes it quite a nuisance to do the equivalent of BASIC Peeks on $CXXX softswitch locations. (It doesn't help that inline doesn't work right either.) TMPLee@dockmaster.ncsc.mil