|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 2879 (0xb3f)
Types: TextFile
Names: »B«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13
└─⟦124ff5788⟧ »DATA«
└─⟦this⟧
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
└─⟦6f12a12be⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
with Text_Io;
with Z80_Defs;
with Desassembleur;
with Octet;
package body Test_Desa is
-- VARIABLES ----------------------------------------------------------
Fin : Boolean := False;
-- PROCEDURES ---------------------------------------------------------
function Lire_Clavier return Octet.T_Octet is
Resultat : Octet.T_Octet := 0;
Chaine_Lue : String (1 .. 2);
begin
Text_Io.Put (">");
Text_Io.Get (Chaine_Lue);
case Chaine_Lue (1) is
when '0' .. '9' =>
Resultat := Character'Pos (Chaine_Lue (1)) -
Character'Pos ('0');
when 'a' .. 'f' =>
Resultat := Character'Pos (Chaine_Lue (1)) -
Character'Pos ('a') + 10;
when 'A' .. 'F' =>
Resultat := Character'Pos (Chaine_Lue (1)) -
Character'Pos ('A') + 10;
when others =>
Fin := True;
end case;
Resultat := Resultat * 16;
case Chaine_Lue (2) is
when '0' .. '9' =>
Resultat := Resultat + Character'Pos (Chaine_Lue (2)) -
Character'Pos ('0');
when 'a' .. 'f' =>
Resultat := Resultat + Character'Pos (Chaine_Lue (2)) -
Character'Pos ('a') + 10;
when 'A' .. 'F' =>
Resultat := Resultat + Character'Pos (Chaine_Lue (2)) -
Character'Pos ('A') + 10;
when others =>
Fin := True;
end case;
Text_Io.Put ("valeur lue en decimal : ");
Text_Io.Put_Line (Integer'Image (Resultat));
return Resultat;
end Lire_Clavier;
------------------------------------------------
procedure Afficher_Instruction (Instruc : Desassembleur.Instruction) is
begin
Text_Io.Put_Line ("");
Text_Io.Put (Desassembleur.Mnemonic'Image (Instruc.Mnemo));
Text_Io.Put (" ");
Text_Io.Put (Z80_Defs.Operande'Image (Instruc.Op_Gauche));
Text_Io.Put (" , ");
Text_Io.Put (Z80_Defs.Operande'Image (Instruc.Op_Droit));
-- Text_Io.Put (Integer'Image (Instruc.Donnee));
Text_Io.Put (Z80_Defs.Mot'Image (Instruc.Donnee));
Text_Io.Put (" taille:");
Text_Io.Put (Integer'Image (Instruc.Taille));
Text_Io.Put_Line ("");
end Afficher_Instruction;
--------------------------------------------
procedure Je_Teste_Le_Desa is
Val_Lue : Octet.T_Octet := 0;
begin
while (not Fin) loop
if (Desassembleur.Traiter_Code (Lire_Clavier)) then
Afficher_Instruction (Desassembleur.Instruction_Trouvee);
end if;
end loop;
end Je_Teste_Le_Desa;
end Test_Desa;