Hi, PalmOS developers,
This is to let everyone know that I, Michael Sokolov, the prc-tools-0.6.0 guy,
am back! I have been away from PalmOS development for two months and wasn't
responding to PalmOS-related E-mail, list or direct, but now I'm back!
If you were concerned about the future of PalmOS gcc and prc-tools during my
absence, rest assured now! I'm very far from the idea of letting John Marshall
and Palm take over our free development environment and try to control it. prc-
tools were created by UNIX devotees who wanted to program for PalmOS. They
wanted a development environment that (1) is absolutely free in terms of being
(1a) free of cost, (1b) open source, and (1c) totally independent of Palm and
free from its control and domination, and that (2) runs under UNIX, follows the
Zen of UNIX, and gives the programmer a UNIX programming experience. I am here
to continue their work by maintaining the PalmOS gcc Programming Environment
and prc-tools. I am doing this in competition with Palm's / John Marshall's
version.
I hold that I, rather than John Marshall or Palm, have the right to call myself
the successor of the original prc-tools because: (A) Palm is ineligible for
this role by definition as it contradicts postulate (1c) above, (B) point (A)
extends to John Marshall as well as he does his work with Palm's blessing and
follows their party line, (C) John Marshall's version strongly deviates from
the Zen of UNIX and thus contradicts postulate (2) above, and (D) John
Marshall's version is technically inferior, breaking milestone features of
previous versions while adding practically no new useful functionality that
works correctly.
My version, on the other hand, strictly follows postulates (1) and (2) above,
and is technically superior, (a) featuring novel innovations and technical
ingenuity throughout, (b) strictly keeping all previously existing features
working, (c) adding important major new features, (d) being strictly quality-
assured, guaranteeing that every feature works correctly as advertised with
release quality, and (e) providing full documentation for everything.
I have also moved this project from my civilian employer's office to my public
service office at the International Free Computing Task Force, as the latter is
clearly in a better position to maintain a free development environment for any
computing platform.
As I've been away from PalmOS development for two months, I haven't done
anything new in this time, so my current distribution is the same as before,
prc-tools-0.6.0beta. You can anonymous-FTP it from my IFCTF FTP site at
ivan.Harhan.ORG in /pub/embedded/palmos. prc-tools-0.6.0beta is still available
from the other site I've used before, but all subsequent distributions will be
distributed through the IFCTF only.
Now that I'm back, however, I'm resuming active development. As you remember,
the current distribution is a beta because it's incomplete. It includes my
PalmOS gcc Programming Environment, which provides all the new functionality
and provides compatibility with previous versions, but as I didn't have my own
compiler/assembler/linker toolchain to go with it ready yet, I used John
Marshall's instead (minimally modified to fit my PalmOS gcc Programming
Environment). As a result, prc-tools-0.6.0beta has in common with John
Marshall's version the very problematic implementation of multiple code
segments and the limit of 32 KB per segment.
Naturally, remedying this is the first step in my plans for further
development. I will now be working on my toolchain to replace John Marshall's
and make my version completely independent of his. My toolchain will have the
following features:
* There will be no ugly hacks in gcc for multiple code segments, and you won't
decorate your functions with section attributes to send them off into segments.
Instead, every module will be compiled and assembled independently, and
different modules will be sent into different segments at link time. I.e., do
it the right way and keep object modules free-standing.
* The intermediate format will be ELF instead of COFF by default, although COFF
will still be supported, and the new ELF linker will happily accept old COFF
objects and libraries for linking into new ELF executables.
* In the new ELF toolchain, the compiler and assembler will emit abstract
tokens for all calls and code references, and the linker will turn them into
actual instruction sequences, correctly choosing intrasegment or intersegment,
16-bit or 32-bit. Every call or code reference will thus always use the correct
instruction sequence. (Floating point math woes recently discussed on this list
were a result of incorrect call sequences being used, a problem that will
always haunt you with John Marshall's inherently flawed design.)
* The 32 KB per segment limit will be truly gone, and 32-bit calls and
references will be automatically used where 16-bit ones overflow. (The link-
time relaxing in the ELF toolchain will ensure that this happens automatically,
transparently, and only where necessary.)
As one of the focal points of prc-tools and PalmOS gcc is the Zen of UNIX, I
feel that the pilot-unix mailing list is the most appropriate discussion forum
for this project, and I will prefer to lead discussions there. palm-dev-forum
is also good being the primary forum for all PalmOS development. However, I
will not participate in or even read the pilot.programmer.gcc newsgroup or any
other newsgroups on Darrin Massena's server. NNTP isn't my favorite protocol,
and although I can find a way of accessing an NNTP server if I have to if it's
sufficiently rare and low-volume, I can't do it for something important and
likely high-volume. If it were a real Usenet newsgroup, there would be a
possibility in the future, as I plan to set up a real UUCP Usenet store-and-
forward host at my facility, but this is of no use for a non-Usenet newsgroup
on a private NNTP server. Also I don't think Darrin Massena's site is
appropriate for an adamantly-UNIX project, as Darrin is very Weendoze-oriented
as I recall.
I will now answer the E-mails I have back-logged on this, both list and direct.
--
Michael Sokolov Harhan Engineering Laboratory
Public Service Agent International Free Computing Task Force
International Engineering and Science Task Force
615 N GOOD LATIMER EXPY STE #4
DALLAS TX 75204-5852 USA
Phone: +1-214-824-7693 (Harhan Eng Lab office)
E-mail: [EMAIL PROTECTED] (ARPA TCP/SMTP) (UUCP coming soon)
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palm.com/devzone/mailinglists.html