DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T

⟦d6a878031⟧ TextFile

    Length: 2959 (0xb8f)
    Types: TextFile
    Names: »TOTAL2_S«

Derivation

└─⟦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⟧ 

TextFile

;
;ACIA memory mapped
;ACIA  non memory mapped
;PTM  memory mapped 
;        
        OPTIONS	CONVERT

ROM	EQU	1000H
RAM     EQU     5000H
STACK	EQU	4500H

AdrIt   EQU     22A0H
Rit1    EQU     2340H
Rit2    EQU     2380H 
Var     EQU     RAM

ACIA1	EQU	6018H
Status1	EQU	ACIA1
Ctrla1  EQU     ACIA1
Port1   EQU     ACIA1+1
Reset1  EQU     03H
ModNit1 EQU     10H

ACIA2	EQU	18H
Status2	EQU	ACIA2
Ctrla2  EQU     ACIA2
Port2   EQU     ACIA2+1
Reset2  EQU     03H
ModIt2  EQU     90H

PTM	EQU	601CH
Ctrl3   EQU     PTM
Ctrl2   EQU     PTM+1
T1Msb   EQU     PTM+2
T1Lsb   EQU     PTM+3
T2Msb   EQU     PTM+4
T2Lsb   EQU     PTM+5
T3Msb   EQU     PTM+6
T3Lsb   EQU     PTM+7
Etat    EQU     PTM+1
Cr1     EQU     40H    ; continu + 16 + IT 
Cr2     EQU     55H    ; continu + 2*8 + IT
Cr3     EQU     61H    ; monocoup + 16 + IT + /8
Init    EQU     21H    ; Init compteur
val1    EQU     08H
val2    EQU     10H  
val3    EQU     16H
haut    EQU     08H

	ORG	ROM

;Init Z80  
        LD      SP,STACK
        ld      a,22H
        ld      i,a
        IM2

;Init ACIA1
        LD      A,Reset1
        LD      (Ctrla1),A
        LD      A,ModNit1
        LD      (Ctrla1),A

;Init ACIA2
        LD      A,Reset2
        OUT     (Ctrla2),A
        LD      A,ModIt2
        OUT     (Ctrla2),A

;Init PTM
        LD      A,Cr3
        LD      (Ctrl3),A
        LD      A,Cr2
        LD      (Ctrl2),A
        LD      A,Cr1
        INC     A
        LD      (Ctrl3),A
        LD      A,haut
        LD      (t1Msb),A
        LD      A,val1
        LD      (t1Lsb),A
        LD      A,haut
        LD      (t2Msb),A
        LD      A,val2
        LD      (t2Lsb),A
        LD      A,haut
        LD      (t3Msb),A
        LD      A,val3
        LD      (t3Lsb),A
        LD      A,Cr1
        LD      (Ctrl3),A
        EI

;Debut routine principale 
        LD      C,0
loop:   INC     C
        JP      loop

;Definition des adresses routines IT
        ORG     AdrIt    
        DEFB    00H
        DEFB    23H
        DEFB    40H
        DEFB    23H
        DEFB    80H 
        DEFB    23H
   

;Routine It pour PPI
        ORG     Rit1
        PUSH    AF
        PUSH    BC
        IN      A,(Port2)
        LD      (Var),A
emet:   LD      A,(Status1)
        AND     2
        JR      Z,emet
        LD      A,(Var)
        LD      (Port1),A
        POP     BC
        POP     AF
        EI
        RET

;Routine It pour PTM
        ORG     Rit2
        PUSH    AF
        PUSH    BC
        LD      A,(Etat)
        AND     1
        JP      cpt1 
        AND     2
        JP      cpt2
        AND     4
        JP      cpt3
        JP      fin

cpt1:   LD      A,(t1Msb)
        LD      A,(t1Lsb)
        JP      fin   
        
cpt2:   LD      A,(t2Msb)
        LD      A,(t2Lsb)
        JP      fin   

cpt3:   LD      A,(t3Msb)
        LD      A,(t3Lsb)
        JP      fin   

fin:    POP     BC
        POP     AF
        EI
        RET
        

	END