DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦378c41102⟧ Ada Source

    Length: 33792 (0x8400)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Xlbp_Display, seg_004f56

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Xlbt_Arithmetic;  
use Xlbt_Arithmetic;  
with Xlbt_Basic;  
use Xlbt_Basic;  
with Xlbt_Image;  
use Xlbt_Image;  
with Xlbt_Rm;  
use Xlbt_Rm;  
with Xlbt_String;  
use Xlbt_String;  
with Xlbt_Visual;  
use Xlbt_Visual;  
with Xlbt_Window;  
use Xlbt_Window;

with Xlbmt_Network_Types;  
use Xlbmt_Network_Types;

package Xlbp_Display is
------------------------------------------------------------------------------
-- X Library Display - Open, Close, Query
--
-- Xlbp_Display - Create, Destroy, Query information about a display connection.
------------------------------------------------------------------------------
-- Copyright 1989 - 1991 by Rational, Santa Clara, California.
-- Copyright 1985 - 1989 by the Massachusetts Institute of Technology
--
--                  All Rights Reserved.
--
-- Permission to use, copy, modify, and distribute this software and its
-- documentation for any purpose and without fee is hereby granted,- provided that the above copyright notice(s) appear in all copies and that
-- both that copyright notice(s) and this permission notice appear in
-- supporting documentation, and that the names of MIT or Rational not be
-- used in advertising or publicity pertaining to distribution of the software
-- without specific, written prior permission.
--
-- MIT and Rational disclaim all warranties with regard to this software,
-- including all implied warranties of merchantability and fitness, in no
-- event shall MIT or Rational be liable for any special, indirect or
-- consequential damages or any damages whatsoever resulting from loss of use,
-- data or profits, whether in an action of contract, negligence or other
-- tortious action, arising out of or in connection with the use or performance
-- of this software.
------------------------------------------------------------------------------

--\x0c
    procedure X_Open_Display (Name    :        X_String;  
                              Display : out    X_Display;  
                              Error   : in out X_Error_String);
------------------------------------------------------------------------------
--  Name    - Specifies the Hostname:Display_Number.Screen_Number to open.
--  Display - Receives None_X_Display or a new X_Display structure
--            representing the newly opened connection.
--  Error   - Receives text indicating the reason for connection failure
--            when Display = None_X_Display upon return.
--
-- Open a connection to the X11 server running some some networked machine.
------------------------------------------------------------------------------

    procedure X_Close_Display (Display : in out X_Display);
------------------------------------------------------------------------------
--  Display - Specifies the display connection to be closed.
--
-- Close a connection that was previously opened via X_Open_Display.  Frees up
-- all X server resources associated with this connection.  This function
-- discards any buffered but unsent output requests.
--
-- Unlike Unix, on an R1000 it is important that any connection opened with
-- a call to X_Open_Display be subsequently closed with X_Close_Display.
-- If this is not done then the connection will remain open and unusable
-- until the next system reboot.
------------------------------------------------------------------------------

    procedure X_No_Op (Display : X_Display);
------------------------------------------------------------------------------
--  Display - Specifies the display to use
--
-- Sends a No-Operation protocol request to the X server, thereby exercising
-- the connection.  It does not flush the output buffer so the request does not
-- actually get sent until some later action flushes it out.
------------------------------------------------------------------------------

--\x0c
    ------------------------------------------------------------------------------
-- Display functions
------------------------------------------------------------------------------

    function X_All_Planes return X_Plane_Mask;
------------------------------------------------------------------------------
-- Returns an X_Plane_Mask which has all bits set on; suitable for use in a
-- plane argument to a procedure.
------------------------------------------------------------------------------

    function X_Bitmap_Bit_Order (Display : X_Display) return X_Byte_Bit_Order;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the bitmap bit order for the display.  Within each bitmap unit, the
-- leftmost bit in the bitmap, as displayed on the screen, is either the least
-- or the most significant bit in the unit.
------------------------------------------------------------------------------

    function X_Bitmap_Pad (Display : X_Display) return U_Char;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the scanline pad for the display.  Each scanline must be padded to
-- a length which is a multiple of this value.
------------------------------------------------------------------------------

    function X_Bitmap_Unit (Display : X_Display) return U_Char;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the size of a bitmap's scanline unit in bits.  The scanline is
-- calculated in multiples of this value.  It is always less than the bitmap
-- scanline pad.
------------------------------------------------------------------------------

    function X_Connection_Number  
                (Display : X_Display) return X_Network_Connection;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the connection for the specified display.  Use with extreme
-- caution.  The value is very operating system dependent.
------------------------------------------------------------------------------

    function X_Default_Root_Window (Display : X_Display) return X_Window;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the root window for the default screen of this display.
------------------------------------------------------------------------------

    function X_Default_Screen (Display : X_Display) return X_Screen_Number;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the number of the default screen for this display.  This is the
-- screen number that should be used by applications that will use only a
-- single screen.
------------------------------------------------------------------------------

    function X_Default_Screen_Of_Display (Display : X_Display) return X_Screen;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the default screen for this display.
------------------------------------------------------------------------------

    function X_Display_Name (Display : X_String) return X_String;
------------------------------------------------------------------------------
--  Display - Specifies a string that may contain a display name.
--
-- If the parameter is "" then the Environment is queried to determine the
-- name of the default display to be used.  If the parameter is not "" then
-- it is simply returned.
------------------------------------------------------------------------------

    function X_Display_String (Display : X_Display) return X_String;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns a string that can be used to duplicate the connection represented
-- by the X_Display structure.  The contents of this string may or may not
-- be identical to the string passed to X_Open_Display when the X_Display was
-- originally created.
------------------------------------------------------------------------------

    function X_Image_Byte_Order (Display : X_Display) return X_Byte_Bit_Order;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the required byte order within images for each scanline unit in
-- X_Y_Format (bitmap) or for each pixel value in Z_Format.
------------------------------------------------------------------------------

    function X_Last_Known_Request_Processed (Display : X_Display) return S_Long;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the full serial number of the last request known by Xlib to
-- have been processed by the X server.  This number is automatically set by
-- Xlib when replies, events, and errors are received.
------------------------------------------------------------------------------

    function X_List_Pixmap_Formats (Display : X_Display)  
                                   return X_Pixmap_Format_Values_List;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns an array of X_Pixmap_Format_Values that describe the types of Z
-- format images that are supported by the specified display.
--
-- Free the list after use with the Free_X_Pixmap_Format_Values_List routine.
------------------------------------------------------------------------------

    function X_Max_Request_Size (Display : X_Display) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the size of the maximum single request that can be sent to the
-- X server being used for this connection.
------------------------------------------------------------------------------

    function X_Next_Request (Display : X_Display) return S_Long;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the full serial number that is to be used for the next request.
-- Serial numbers are maintained separately for each display connection.
------------------------------------------------------------------------------

    function X_Protocol_Revision (Display : X_Display) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the minor protocol revision number of the X server.
------------------------------------------------------------------------------

    function X_Protocol_Version (Display : X_Display) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the major version number (11) of the X protocol associated with the
-- connected display.
------------------------------------------------------------------------------

    function X_Q_Length (Display : X_Display) return S_Long;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the length of the event queue for the connected display.  Note that
-- there may be more events that have not been read into the queue yet.
------------------------------------------------------------------------------

    function X_Resource_Database (Display : X_Display) return X_Rm_Database;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the RM database associated with the display.
------------------------------------------------------------------------------

    function X_Resource_Manager_String  
                (Display : X_Display) return X_String_Pointer;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the RESOURCE_MANAGER property associated with the the root
-- window of screen 0 of the display's server.
------------------------------------------------------------------------------

    procedure X_Set_Resource_Database (Display  : X_Display;  
                                       Database : X_Rm_Database);
------------------------------------------------------------------------------
--  Display  - Specifies the display to use.
--  Database - Specifies the new database value to use.
--- Called to change the database associated with a display.  The old database is
-- NOT deallocated; this is what you want if you have merged something with
-- the old database and are now setting the database to be that merged version.
------------------------------------------------------------------------------


    function X_Screen_Count (Display : X_Display) return X_Screen_Number;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns the number of available screens on this display.
------------------------------------------------------------------------------

    function X_Server_Vendor (Display : X_Display) return X_String;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns a string that provides some identification of the owner of the X
-- server implementation.  (Note: Unlike in the C world, this string is not
-- Ascii.Nul terminated.)
------------------------------------------------------------------------------

    function X_Vendor_Release (Display : X_Display) return S_Long;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--
-- Returns a number related to a vendor's release of the X server.
------------------------------------------------------------------------------

--\x0c
    ------------------------------------------------------------------------------
-- Screen N of Display functions
------------------------------------------------------------------------------

    function X_Black_Pixel (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Pixel;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the "black" X_Pixel value for this screen of this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Default_Colormap (Display : X_Display;  
                                 Screen  : X_Screen_Number) return X_Colormap;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the default X_Colormap for allocation on the specified screen.  Most
-- routine color allocations should be made out of this color map.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Default_Depth (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Char;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the depth (number of planes) of the default root window for the
-- specified screen.  Other depths may also be supported on this screen.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Default_Gc (Display : X_Display;  
                           Screen  : X_Screen_Number) return X_Gc;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the default X_Gc (graphics context) for the root window of the
-- specified screen.  This X_Gc is created for the convenience of simple
-- applications and contains the default X_Gc components with the foreground
-- and background pixel values initialized to the black and white pixels,
-- respectively, for the screen.  You can modify its contents freely because
-- it is not used in any Xlib function.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Default_Visual (Display : X_Display;  
                               Screen  : X_Screen_Number) return X_Visual;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the default X_Visual (visual type) for the specified screen of this
-- display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Cells (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the number of entries in the default color map for the specified
-- screen of this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Height (Display : X_Display;  
                               Screen  : X_Screen_Number) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the height, in pixels, of the specified screen on this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Height_Mm (Display : X_Display;  
                                  Screen  : X_Screen_Number) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the height, in millimeters, of the specified screen on this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Planes (Display : X_Display;  
                               Screen  : X_Screen_Number) return U_Char;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the depth of the root window of the specified screen for this
-- display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Width (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the width, in pixels, of the specified screen of this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Display_Width_Mm (Display : X_Display;  
                                 Screen  : X_Screen_Number) return U_Short;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the width, in millimeters, of the specified screen of this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_List_Depths (Display : X_Display;  
                            Screen  : X_Screen_Number) return U_Char_List;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns a list of the supported depths for this screen.  Free the list after
-- use with the Free_U_Char_List routine.
------------------------------------------------------------------------------

    function X_Root_Window (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Window;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the root window for this screen on this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_Screen_Of_Display (Display : X_Display;  
                                  Screen  : X_Screen_Number) return X_Screen;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the X_Screen structure associated with the specified screen of this
-- display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

    function X_White_Pixel (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Pixel;
------------------------------------------------------------------------------
--  Display - Specifies the display to use.
--  Screen  - Specifies the number of the screen connected to the display.
--
-- Returns the "white" X_Pixel value for this screen of this display.
-- Will raise Constraint_Error if there is no such screen.
------------------------------------------------------------------------------

--\x0c
    ------------------------------------------------------------------------------
-- Screen oriented functions (toolkit)
------------------------------------------------------------------------------

    function X_Black_Pixel_Of_Screen (Screen : X_Screen) return X_Pixel;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the "black" X_Pixel value for this screen.
------------------------------------------------------------------------------

    function X_Cells_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the number of colormap cells in the default colormap of the
-- specified screen.
------------------------------------------------------------------------------

    function X_Default_Colormap_Of_Screen (Screen : X_Screen) return X_Colormap;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the default color map of the specified screen.
------------------------------------------------------------------------------

    function X_Default_Depth_Of_Screen (Screen : X_Screen) return U_Char;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the default depth of the root window on the specified screen.
------------------------------------------------------------------------------

    function X_Default_Gc_Of_Screen (Screen : X_Screen) return X_Gc;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the default X_Gc (graphics context) of the specified screen,
-- which has the same depth as the root window of the screen.  The X_Gc
-- must never be freed.
------------------------------------------------------------------------------

    function X_Default_Visual_Of_Screen (Screen : X_Screen) return X_Visual;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the default X_Visual (visual type) of the specified screen.
------------------------------------------------------------------------------

    function X_Display_Of_Screen (Screen : X_Screen) return X_Display;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the display associated with the specified screen.
------------------------------------------------------------------------------

    function X_Does_Backing_Store  
                (Screen : X_Screen) return X_Backing_Store_Hint;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns a value indicated whether the screen supports backing stores.
------------------------------------------------------------------------------

    function X_Does_Save_Unders (Screen : X_Screen) return Boolean;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns a boolean indication of whether or not the screen supports
-- save-unders.  True means it does.-----------------------------------------------------------------------------

    function X_Event_Mask_Of_Screen (Screen : X_Screen) return X_Event_Mask;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the initial root event mask for the specified screen.
------------------------------------------------------------------------------

    function X_Height_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the height of the screen in pixels.
------------------------------------------------------------------------------

    function X_Height_Mm_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the height of the screen in millimeters.
------------------------------------------------------------------------------

    function X_Max_Cmaps_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the maximum number of installed colormaps supported by the
-- specified screen.
------------------------------------------------------------------------------

    function X_Min_Cmaps_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the minimum number of installed colormaps supported by the
-- specified screen.
------------------------------------------------------------------------------

    function X_Planes_Of_Screen (Screen : X_Screen) return U_Char;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the number of planes in the root window of the specified screen.
------------------------------------------------------------------------------

    function X_Root_Window_Of_Screen (Screen : X_Screen) return X_Window;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the root window of the specified screen.
------------------------------------------------------------------------------

    function X_Screen_Number_Of_Screen  
                (Screen : X_Screen) return X_Screen_Number;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the screen number of the specified screen.
------------------------------------------------------------------------------

    function X_White_Pixel_Of_Screen (Screen : X_Screen) return X_Pixel;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the "black" X_Pixel value for this screen.
------------------------------------------------------------------------------

    function X_Width_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the width of the specified screen in pixels.
------------------------------------------------------------------------------

    function X_Width_Mm_Of_Screen (Screen : X_Screen) return U_Short;
------------------------------------------------------------------------------
--  Screen - Specifies the screen to use.
--
-- Returns the width of the specified screen in millimeters.
------------------------------------------------------------------------------

    function X_Visual_Id_From_Visual (Visual : X_Visual) return X_Visual_Id;
------------------------------------------------------------------------------
--  Visual - Specifies the visual to use
--
-- Called to obtain the X resource ID that corresponds to a Visual.
------------------------------------------------------------------------------

--\x0c
end Xlbp_Display;  

E3 Meta Data

    nblk1=20
    nid=0
    hdr6=40
        [0x00] rec0=21 rec1=00 rec2=01 rec3=002
        [0x01] rec0=11 rec1=00 rec2=02 rec3=026
        [0x02] rec0=11 rec1=00 rec2=03 rec3=03c
        [0x03] rec0=13 rec1=00 rec2=04 rec3=090
        [0x04] rec0=13 rec1=00 rec2=05 rec3=07c
        [0x05] rec0=14 rec1=00 rec2=06 rec3=03a
        [0x06] rec0=14 rec1=00 rec2=07 rec3=042
        [0x07] rec0=13 rec1=00 rec2=08 rec3=074
        [0x08] rec0=12 rec1=00 rec2=09 rec3=09c
        [0x09] rec0=14 rec1=00 rec2=0a rec3=032
        [0x0a] rec0=13 rec1=00 rec2=0b rec3=07c
        [0x0b] rec0=14 rec1=00 rec2=0c rec3=036
        [0x0c] rec0=15 rec1=00 rec2=0d rec3=002
        [0x0d] rec0=12 rec1=00 rec2=0e rec3=06c
        [0x0e] rec0=14 rec1=00 rec2=0f rec3=080
        [0x0f] rec0=13 rec1=00 rec2=10 rec3=012
        [0x10] rec0=11 rec1=00 rec2=11 rec3=04e
        [0x11] rec0=12 rec1=00 rec2=12 rec3=068
        [0x12] rec0=13 rec1=00 rec2=13 rec3=004
        [0x13] rec0=12 rec1=00 rec2=14 rec3=02a
        [0x14] rec0=12 rec1=00 rec2=15 rec3=036
        [0x15] rec0=13 rec1=00 rec2=16 rec3=01c
        [0x16] rec0=13 rec1=00 rec2=17 rec3=036
        [0x17] rec0=14 rec1=00 rec2=18 rec3=01e
        [0x18] rec0=15 rec1=00 rec2=19 rec3=00c
        [0x19] rec0=13 rec1=00 rec2=1a rec3=04e
        [0x1a] rec0=15 rec1=00 rec2=1b rec3=002
        [0x1b] rec0=14 rec1=00 rec2=1c rec3=04c
        [0x1c] rec0=15 rec1=00 rec2=1d rec3=006
        [0x1d] rec0=15 rec1=00 rec2=1e rec3=01e
        [0x1e] rec0=14 rec1=00 rec2=1f rec3=090
        [0x1f] rec0=09 rec1=00 rec2=20 rec3=000
    tail 0x2150095e4819781f5f64e 0x42a00088462063203