|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 10240 (0x2800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Cvt_090, seg_00549f
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
with Test_Io;
with Cvt_Test_Utilities;
with Xlbt_Arithmetic;
with Xlbp_U_Char_Generics;
--/ if Record_Rep_Clauses then
--// with Xlbmt_Parameters;
--// use Xlbmt_Parameters;
--/ end if;
procedure Cvt_090 is
------------------------------------------------------------------------------
-- Tests for Xlbp_U_Char_Generics
------------------------------------------------------------------------------
-- ****************************************************************************
-- * Date - /Name/ Comment
-- *
-- * 25-SEP-90 - /DRK/ Created.
-- * 14-NOV-90 - /GEB/ Separate cvt_090 into four parts.
-- ****************************************************************************
------------------------------------------------------------------------------
---------------------------------
-- Handy constants and renames --
---------------------------------
package Utils renames Cvt_Test_Utilities;
package Tests renames Utils.U_Char_Tests;
use Utils.U_Char_Constants;
----------------------------------------------------------------------
-----------------
-- Local types --
-----------------
type Discrete_S32 is new Xlbt_Arithmetic.S_Long;
type Discrete_S16 is new Xlbt_Arithmetic.S_Short;
type Discrete_U16 is new Xlbt_Arithmetic.U_Short;
type Discrete_S8 is new Xlbt_Arithmetic.S_Char;
type Discrete_U8 is new Xlbt_Arithmetic.U_Char;
----------------------------------------------------------------------
-------------------------
-- Major test sections --
-------------------------
procedure Test_Discrete_Conversions is
procedure To_Uca is
new Xlbp_U_Char_Generics.Convert_Discrete_To_Uca (Discrete_S32);
procedure From_Uca is
new Xlbp_U_Char_Generics.Convert_Uca_To_Discrete (Discrete_S32);
procedure Test_Discrete_S32 is
new Tests.Tester (Discrete_S32, "Discrete_S32", To_Uca, From_Uca);
procedure To_Uca is
new Xlbp_U_Char_Generics.Convert_Discrete_To_Uca (Discrete_S16);
procedure From_Uca is
new Xlbp_U_Char_Generics.Convert_Uca_To_Discrete (Discrete_S16);
procedure Test_Discrete_S16 is
new Tests.Tester (Discrete_S16, "Discrete_S16", To_Uca, From_Uca);
procedure To_Uca is
new Xlbp_U_Char_Generics.Convert_Discrete_To_Uca (Discrete_S8);
procedure From_Uca is
new Xlbp_U_Char_Generics.Convert_Uca_To_Discrete (Discrete_S8);
procedure Test_Discrete_S8 is
new Tests.Tester (Discrete_S8, "Discrete_S8", To_Uca, From_Uca);
procedure To_Uca is
new Xlbp_U_Char_Generics.Convert_Discrete_To_Uca (Discrete_U16);
procedure From_Uca is
new Xlbp_U_Char_Generics.Convert_Uca_To_Discrete (Discrete_U16);
procedure Test_Discrete_U16 is
new Tests.Tester (Discrete_U16, "Discrete_U16", To_Uca, From_Uca);
procedure To_Uca is
new Xlbp_U_Char_Generics.Convert_Discrete_To_Uca (Discrete_U8);
procedure From_Uca is
new Xlbp_U_Char_Generics.Convert_Uca_To_Discrete (Discrete_U8);
procedure Test_Discrete_U8 is
new Tests.Tester (Discrete_U8, "Discrete_U8", To_Uca, From_Uca);
begin
Test_Io.Section ("Converting discrete types");
Test_Discrete_S32 ("16#0000_0000#", 0, (1 .. 4 => 16#00#));
Test_Discrete_S32 ("16#0000_0001#", 1, Swab_00_00_00_01);
Test_Discrete_S32 ("16#FFFF_FFFF#", -1, Swab_Ff_Ff_Ff_Ff);
Test_Discrete_S32 ("16#8000_0000#", Discrete_S32'First,
Swab_80_00_00_00);
Test_Discrete_S32 ("16#7FFF_FFFF#", Discrete_S32'Last,
Swab_7f_Ff_Ff_Ff);
Test_Discrete_S32 ("16#0123_4567#", 16#0123_4567#, Swab_01_23_45_67);
Test_Io.New_Line;
Test_Discrete_S16 ("16#0000#", 0, Swab_00_00);
Test_Discrete_S16 ("16#0001#", 1, Swab_00_01);
Test_Discrete_S16 ("16#FFFF#", -1, Swab_Ff_Ff);
Test_Discrete_S16 ("16#8000#", Discrete_S16'First, Swab_80_00);
Test_Discrete_S16 ("16#7FFF#", Discrete_S16'Last, Swab_7f_Ff);
Test_Discrete_S16 ("16#0123#", 16#0123#, Swab_01_23);
Test_Io.New_Line;
Test_Discrete_S8 ("16#00#", 0, (1 => 16#00#));
Test_Discrete_S8 ("16#01#", 1, (1 => 16#01#));
Test_Discrete_S8 ("16#FF#", -1, (1 => Uca_Ff));
Test_Discrete_S8 ("16#80#", Discrete_S8'First, (1 => Uca_80));
Test_Discrete_S8 ("16#7F#", Discrete_S8'Last, (1 => 16#7F#));
Test_Io.New_Line;
Test_Discrete_U16 ("16#0000#", 0, Swab_00_00);
Test_Discrete_U16 ("16#0001#", 1, Swab_00_01);
Test_Discrete_U16 ("16#FFFF#", Discrete_U16'Last, Swab_Ff_Ff);
Test_Discrete_U16 ("16#8000#", 16#8000#, Swab_80_00);
Test_Discrete_U16 ("16#7FFF#", 16#7FFF#, Swab_7f_Ff);
Test_Discrete_U16 ("16#0123#", 16#0123#, Swab_01_23);
Test_Io.New_Line;
Test_Discrete_U8 ("16#00#", 0, (1 => 16#00#));
Test_Discrete_U8 ("16#01#", 1, (1 => 16#01#));
Test_Discrete_U8 ("16#FF#", Discrete_U8'Last, (1 => Uca_Ff));
Test_Discrete_U8 ("16#7F#", 127, (1 => 16#7F#));
Test_Discrete_U8 ("16#80#", 128, (1 => 16#80#));
Test_Io.New_Line;
end Test_Discrete_Conversions;
begin
Test_Discrete_Conversions;
end Cvt_090;
nblk1=9
nid=0
hdr6=12
[0x00] rec0=20 rec1=00 rec2=01 rec3=026
[0x01] rec0=1a rec1=00 rec2=02 rec3=044
[0x02] rec0=01 rec1=00 rec2=09 rec3=01a
[0x03] rec0=13 rec1=00 rec2=03 rec3=058
[0x04] rec0=01 rec1=00 rec2=08 rec3=02c
[0x05] rec0=13 rec1=00 rec2=04 rec3=036
[0x06] rec0=00 rec1=00 rec2=07 rec3=024
[0x07] rec0=14 rec1=00 rec2=05 rec3=05e
[0x08] rec0=11 rec1=00 rec2=06 rec3=000
tail 0x21500a15681978a3dc6eb 0x42a00088462063203