Martin wrote:
On 12/09/2011 17:01, Mark Morgan Lloyd wrote:
Mark Morgan Lloyd wrote:
Martin wrote:
Ok, the below code, emualtes the pseudoterminal handling => the read
is supposed to bne none blocking.
maybe some of the constants are indeed wrong for your system
(endianess)?
Thanks, I'll work on that as soon as I have time. If it were a simple
endianness issue I'd expect PPC (PowerPC, in an old Mac) to fail.
>> O_NONBLOCK = &04000;
For some reason that reminded me of a discussion of serial access on
OSX in the fpc-pascal ML a few days ago. Nobody actually said in that
thread that that varied by architecture, but a bit of Googling got me
http://comments.gmane.org/gmane.linux.kernel/1093174 hence on one of
my systems
$ find . -name fcntl.h -exec grep O_NONBLOCK \{\} \; -print
#define O_NONBLOCK 0x4000
./include/asm-sparc64/fcntl.h
etc. Also fpc/.../linux/ostypes.inc specifically has a different value
for SPARC... GOK who's originally responsible for that inconsistency.
I added a ifdef, as found in the fpc source.
Most curious that it depends on CPUsparc , instead of OSsomething.
But Solaris and some other OSes have their own implementations of
ostypes.inc, with constants eventually expressed by FPC's BaseUnix unit.
Is there any particular reason that you're redefining O_NONBLOCK, rather
than using the one from BaseUnix?
Since I have no means of testing, could I asked you, please?
For the record, I have a Linux SPARC system set aside for developers
here, and could send you an ARM image for Qemu if necessary.
Debugger now working on SPARC. I appear to have other problems during
startup but I don't think they're yours. Many thanks for your help :-)
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus