www.parrotcode.org/docs seems to like them, so here they are. This rolls in the byteorder.dev patch previously submitted.
(I see in the patch that we're not consistent with what a line ending should be. I've left that alone.) -- Bryan C. Warnock bwarnock@(gtemail.net|raba.com)
Index: intro.pod =================================================================== RCS file: /cvs/public/parrot/docs/intro.pod,v retrieving revision 1.10 diff -u -r1.10 intro.pod --- intro.pod 12 Jun 2002 22:12:21 -0000 1.10 +++ intro.pod 27 Aug 2002 04:07:47 -0000 @@ -1,4 +1,8 @@ -=head1 The Parrot Primer +=head1 TITLE + +The Parrot Primer + +=head1 Welcome to Parrot This is an update to the article 'Parrot: Some Assembly Required' which appeared on http://www.perl.com for the 0.0.2 release of Parrot. It's Index: overview.pod =================================================================== RCS file: /cvs/public/parrot/docs/overview.pod,v retrieving revision 1.3 diff -u -r1.3 overview.pod --- overview.pod 28 Jan 2002 21:04:41 -0000 1.3 +++ overview.pod 27 Aug 2002 04:07:48 -0000 @@ -1,5 +1,8 @@ +=head1 TITLE -=head1 An overview of the Parrot intepreter +A Parrot Overview + +=head1 The Parrot Intepreter This document is an introduction to the structure of and the concepts used by the Parrot shared bytecode compiler/interpreter system. We will Index: parrot.pod =================================================================== RCS file: /cvs/public/parrot/docs/parrot.pod,v retrieving revision 1.8 diff -u -r1.8 parrot.pod --- parrot.pod 13 Aug 2002 00:47:26 -0000 1.8 +++ parrot.pod 27 Aug 2002 04:07:48 -0000 @@ -1,5 +1,6 @@ -# This file is in POD format; if you're not used to reading POD, -# you can run the file through "perldoc" for a plain text version. +=head1 TITLE + +Parrot =head1 The Parrot Bytecode Interpreter Index: parrotbyte.pod =================================================================== RCS file: /cvs/public/parrot/docs/parrotbyte.pod,v retrieving revision 1.6 diff -u -r1.6 parrotbyte.pod --- parrotbyte.pod 9 May 2002 16:36:05 -0000 1.6 +++ parrotbyte.pod 27 Aug 2002 04:07:48 -0000 @@ -1,3 +1,7 @@ +=head1 TITLE + +The Parrot Bytecode Format + =head1 Format of the Parrot bytecode 0 1 2 3 Index: running.pod =================================================================== RCS file: /cvs/public/parrot/docs/running.pod,v retrieving revision 1.9 diff -u -r1.9 running.pod --- running.pod 11 May 2002 20:19:50 -0000 1.9 +++ running.pod 27 Aug 2002 04:07:49 -0000 @@ -1,3 +1,7 @@ +=head1 TITLE + +Running Parrot + =head1 Running Parrot code This file briefly describes the current set of executables and what Index: strings.pod =================================================================== RCS file: /cvs/public/parrot/docs/strings.pod,v retrieving revision 1.9 diff -u -r1.9 strings.pod --- strings.pod 21 Aug 2002 08:01:22 -0000 1.9 +++ strings.pod 27 Aug 2002 04:07:49 -0000 @@ -1,3 +1,6 @@ +=head1 TITLE + +Parrot Strings =head1 The Parrot String API Index: tests.pod =================================================================== RCS file: /cvs/public/parrot/docs/tests.pod,v retrieving revision 1.2 diff -u -r1.2 tests.pod --- tests.pod 19 Mar 2002 22:53:47 -0000 1.2 +++ tests.pod 27 Aug 2002 04:07:50 -0000 @@ -1,3 +1,6 @@ +=head1 TITLE + +Testing Parrot =head1 A basic guide to writing tests for Parrot @@ -58,4 +61,4 @@ Are a chunk of assembler and a chunk of expected output. -=back \ No newline at end of file +=back Index: vtables.pod =================================================================== RCS file: /cvs/public/parrot/docs/vtables.pod,v retrieving revision 1.10 diff -u -r1.10 vtables.pod --- vtables.pod 21 Jun 2002 17:23:06 -0000 1.10 +++ vtables.pod 27 Aug 2002 04:07:50 -0000 @@ -1,3 +1,6 @@ +=head1 TITLE + +Parrot Vtables =head1 Implementing Variable Types with Vtables Index: dev/byteorder.dev =================================================================== RCS file: /cvs/public/parrot/docs/dev/byteorder.dev,v retrieving revision 1.1 diff -u -r1.1 byteorder.dev --- dev/byteorder.dev 19 Jul 2002 02:56:56 -0000 1.1 +++ dev/byteorder.dev 27 Aug 2002 04:07:51 -0000 @@ -1,6 +1,11 @@ -Overview -The byteorder code will check the endianness of an INTVAL or -an opcode_t value and swap from little to big, or big to little +=head1 TITLE + +byteorder + +=head1 Overview + +The byteorder code will check the endianness of an C<INTVAL> or +an C<opcode_t> value and swap from little to big, or big to little when appropriate. Functions also exist to convert a 4, 8, 12, or 16 byte character buffer to big or little endian. The functions will be placed in the PackFile @@ -8,10 +13,11 @@ the Parrot interpreter will not call these functions when converting from and to the same byteorder. -Data Structures and Algorithms +=head1 Data Structures and Algorithms + The algorithm to change from one endian to another is identical and simplistic to understand. Basically, -the size of an INTVAL or opcode_t is used to +the size of an C<INTVAL> or C<opcode_t> is used to determine at compile time how many bits should be shifted around. Then, the correct bits are shifted the correct amounts (please look at source code for @@ -19,39 +25,73 @@ by a straight forward algorithm that assigns swaps all of the bytes. -Important Functions -fetch_iv_le - This function will convert an INTVAL into -little endian format. It is a noop if the native +=head1 Important Functions + +=over 4 + +=item C<fetch_iv_le> + +This function will convert an C<INTVAL> into +little endian format. It is a no-op if the native format is already little endian. -fetch_iv_be - This function will convert an INTVAL into -big endian format. It is a noop if the native + +=item C<fetch_iv_be> + +This function will convert an C<INTVAL> into +big endian format. It is a no-op if the native format is already big endian. -fetch_op_be - This function will convert an opcode_t into -big endian format. It is a noop if the native + +=item C<fetch_op_be> + +This function will convert an C<opcode_t> into +big endian format. It is a no-op if the native format is already big endian. -fetch_op_le - This function will convert an opcode_t into -little endian fommat. It is a noop if the native + +=item C<fetch_op_le> + +This function will convert an C<opcode_t> into +little endian format. It is a no-op if the native format is already little endian. -fetch_buf_le_(4,8,12,16) - This set of functions + +=item C<fetch_buf_le_>(4,8,12,16) + +This set of functions will convert an unsigned character buffer into -little endian format. Only a memcpy is performed +little endian format. Only a C<memcpy> is performed if the native format is already little endian. -fetch_buf_be_(4,8,12,16) - This set of functions + +=item C<fetch_buf_be_>(4,8,12,16) + +This set of functions will convert an unsigned character buffer into -big endian format. Only a memcpy is performed +big endian format. Only a C<memcpy> is performed if the native format is already big endian. -Unimplemented Functions -endianize_fetch_int - fetch an INTVAL directly from a bytestream -endianize_put_int - put an INTVAL directly on a bytestream +=back + +=head1 Unimplemented Functions + +=over 4 + +=item C<endianize_fetch_int> + +fetch an C<INTVAL> directly from a bytestream + +=item C<endianize_put_int> + +put an C<INTVAL> directly on a bytestream + +=back + +=head1 History -History Initial version by Melvin on 2002/05/01 -Notes +=head1 Notes + This assumes big or little endianness...other, more esoteric forms (such as middle endian) are not supported. -Also, an assumption of 4 or 8 byte INTVAL's -and opcode_t's is made. +Also, an assumption of 4 or 8 byte C<INTVAL>'s +and C<opcode_t>'s is made. -References +=head1 References Index: dev/dod.dev =================================================================== RCS file: /cvs/public/parrot/docs/dev/dod.dev,v retrieving revision 1.2 diff -u -r1.2 dod.dev --- dev/dod.dev 28 Jul 2002 23:20:21 -0000 1.2 +++ dev/dod.dev 27 Aug 2002 04:07:51 -0000 @@ -1,6 +1,6 @@ -=head1 Name +=head1 TITLE - dod.c +dod =head1 Overview Index: dev/rx.dev =================================================================== RCS file: /cvs/public/parrot/docs/dev/rx.dev,v retrieving revision 1.1 diff -u -r1.1 rx.dev --- dev/rx.dev 19 Jul 2002 02:56:56 -0000 1.1 +++ dev/rx.dev 27 Aug 2002 04:07:51 -0000 @@ -1,6 +1,6 @@ -=head1 NAME +=head1 TITLE -rx.c / rx.h +rx =head1 SUMMARY