4 Definitional conventions
[…]
The characters required to form Pascal programs shall be those implicitly required to form the tokens and separators defined in 6.1.
But that is distinct from your earlier
6.4.2.2 Required simple-types
This was the point in the discussion a few years ago of a mainframe port: FPC could quite happily have EBCDIC-based string types (i.e. section 6), but changing the compiler itself to use anything other than an ASCII representation for the program (i.e. section 4) would have been decidedly non-trivial.
So a cross-compiler would have been viable, at least for newer variants of the IBM mainframe architecture, but a native compiler much less so.
MarkMLl