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 - downloadIndex: ┃ B T ┃
Length: 3962 (0xf7a) 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 Memoire_2; with Mot; package body Bus_2 is -- VARIABLES -------------------------------------------- Etat_Interne : Etat; Vecteur_It : Octet.T_Octet; -- PROCEDURES INTERNES ---------------------------------- procedure Modifie_Etat (Ad : Adresse.T_Adresse := 0; Donnee : Octet.T_Octet := 0; Control : Cycle) is begin Etat_Interne.Bus_Adresse := Ad; Etat_Interne.Bus_Donnee := Donnee; Etat_Interne.Bus_Control := Cycle; end Modifie_Etat; --------------------------------------------------------- -- INTERFACE --------------------------------------------------------- -- Entrees Z80 ------------------------------------------ procedure Lecture_Memoire (Ad : Adresse.T_Adresse; Donnee : out Octet.T_Octet) is begin Memoire_2.Lecture (Ad, Donnee); Modifie_Etat (Ad, Donnee, Lect_Memoire); end Lecture_Memoire; -------------------------------------------- procedure Lecture_Code (Ad : Adresse.T_Adresse; Code : out Octet.T_Octet) is begin Memoire_2.Lecture (Ad, Donnee); Modifie_Etat (Ad, Donnee, Lect_Code); end Lecture_Code; -------------------------------------------- procedure Ecriture_Memoire (Ad : Adresse.T_Adresse; Donnee : Octet.T_Octet) is begin Modifie_Etat (Ad, Donnee, Ecrit_Memoire); Memoire_2.Ecriture (Ad, Donnee); end Ecriture_Memoire; -------------------------------------------- procedure Lecture_E_S (Ad : Adresse.T_Adresse; Donnee : out Octet.T_Octet) is Ad_Periph : Octet.T_Octet; begin Ad_Periph := Mot.Poids_Faible (Ad); Peripheriques.Lecture (Ad_Periph, Donnee); Modifie_Etat (Ad, Donnee, Lect_E_S); end Lecture_E_S; -------------------------------------------- procedure Ecriture_E_S (Ad : Adresse.T_Adresse; Donnee : Octet.T_Octet) is Ad_Periph : Octet.T_Octet; begin Modifie_Etat (Ad, Donnee, Ecrit_E_S); Ad_Periph := Mot.Poids_Faible (Ad); Peripheriques.Ecriture (Ad_Periph, Donnee); end Ecriture_E_S; -------------------------------------------- procedure Lit_Vecteur_It (Vecteur : out Octet.T_Octet) is begin Modifie_Etat (Control => Dem_Irq); Vecteur := Vecteur_It; end Lit_Vecteur_It; -------------------------------------------- procedure Bus_Ack is begin Modifie_Etat (Control => Recep_Bus); end Bus_Ack; -------------------------------------------- procedure Halt is begin Modifie_Etat (Control => Halt); end Halt; -- Entrees Peripheriques -------------------------------------- procedure Irq (Periph_Id : Peripheriques.Num_Periph) is begin Analyse_Etat (Control => Dem_Irq); end Irq; procedure Nmi (Periph_Id : Peripheriques.Num_Periph) is begin Analyse_Etat (Control => Dem_Nmi); end Nmi; procedure Ecrit_Vecteur_It (Vecteur : Octet.T_Octet) is begin Vecteur_It := Vecteur; end Ecrit_Vecteur_It; -- Autres ---------------------------------------------------- procedure Reset is begin [statement] end Reset; procedure Bus_Request is begin Analyse_Etat (Control => Dem_Bus); end Bus_Request; -- Entrees Debugger ------------------------------------------ procedure Lire_Etat (Etat_Bus : out Etat) is begin Etat_Bus := Etat_Interne; end Lire_Etat; procedure Marquer_Etat (Etat_Bus : Etat; Signal : Message.Num_Message; Etat_Id : out Num_Etat) is begin [statement] end Marquer_Etat; procedure Liberer_Etat (Etat_Id : Num_Etat) is begin [statement] end Liberer_Etat; end Bus_2;