|
|
DataMuseum.dkPresents historical artifacts from the history of: RegneCentralen RC3600/RC7000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RegneCentralen RC3600/RC7000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7168 (0x1c00)
Types: TextFile
Names: »REATT«
└─⟦954fa3634⟧ Bits:30001792 SG0012 Floppy
└─⟦this⟧ »/REATT«
.TITL RETTY
.DO .PASS
.MSG SPECIAL TTY-DRIVER
.ENDC
.NREL
.RDXO 10
.RDX 10
.TXTM 1
.TXTN 1
.DUSR AMXNM=-1
.DUSR JSRIN=JSR @ .+1
.DUSR CPROC=-2
.DUSR PIL62=-3
.DUSR .27=-4
.DUSR GEM00=-5
«ff»
PGDS: 1B0+1B5+1B15
TXT00
0
PCDS-PGDS
.TXT 'RETTY'
TXT00: .TXT 'POWER RESTORED<0>'
TXT01: .TXT 'UNKNOWN PROCESS<0>'
TXT02: .TXT 'PROCESS NOT IN EVENT QUEUE<0>'
TXT03: .TXT 'AMX<0><0>'
«ff»
;ROUTINE OCHAR, OUTPUT ONE CHARACTER ON TERMINAL NO. 1
;NO REGISTERS IS DESTROYED, (OF COURSE AC3 CONTAINS LINK)
OCHAR: STA 3,MDL03
STA 2,MDL02
STA 1,MDL01
STA 0,MDL00
LDA 1,.127
AND 1,0
LDA 1,MOCH2
PUTBY
LDA 2,CUR
LDA 2,AMXNM,2
LDA 1,MOCHA
SENDM
MOVZL # 2,2,SZC
JMP .-5
WAITA
LDA 0,MDL00
LDA 1,MDL01
LDA 2,MDL02
LDA 3,MDL03
JMP +1,3
MOCHA: .+1
9*256+7
1
MOCH2: .+2*2
0
128
MDL00: 0
MDL01: 0
MDL02: 0
MDL03: 0
«ff»
;ROUTINE ICHAR, INPUT ONE CHARATER FROM TERMINAL NO.1
; AC0 CONTAINS CHARACTER
ICHAR: STA 3,MDL13
STA 2,MDL12
STA 1,MDL11
LDA 2,MDL14
MOV 2,2,SNR
JMP ICHA2
WAITA
LDA 1,MICH2
GETBY
STA 0,MDL10
ICHA2: LDA 2,CUR
LDA 2,AMXNM,2
LDA 1,MICHA
SENDM
MOVZL # 2,2,SZC
JMP .-5
STA 2,MDL14
LDA 0,MDL10
LDA 1,MDL11
LDA 2,MDL12
LDA 3,MDL13
JMP +1,3
MICHA: .+1
9*256+45
1
MICH2: .+2*2
0
0
MDL10: 0
MDL11: 0
MDL12: 0
MDL13: 0
MDL14: 0
«ff»
REQUE: MOV 3,2
LDA 0,MESS0,3
MOVZL 0,0,SZC
JMP LOOP+1
MOVOR 0,0
STA 0,MESS0,3
SUB 0,0
STA 0,MESS3,3
JMP LOOP+1
BIRTH: LDA 2,CUR
LDA 2,AMXNM,2
LDA 1,BIRMA
SENDM
MOVZL # 2,2,SZC
JMP .-5
WAITA
JSRIN
ICHAR
LOOP:SUB 2,2
WAITE
JMP INPUT
MOV 2,3
LDA 2,CUR
STA 3,BUF,2
LDA 0,MESS1,3
MOV 0,0,SNR
JMP FINIS
STA 0,COUNT,2
LDA 0,MESS2,3
STA 0,ADDRE,2
LDA 0,MESS0,3
MOVR 0,0,SNC
JMP FINIS
MOVR 0,0,SNC
JMP REQUE ;INPUT !
LDA 0,SENDE,3
LDA 1,CPROC,2
SNE 0,1
JMP UD
LDA 1,.4
ADDZL 0,1
LDA 0,.10
JSRIN
OCHAR
JSRIN
OCHAR
LDA 0,.13
JSRIN
OCHAR
LDA 0,PIL62,2
JSRIN
OCHAR
LDA 0,.5
STA 0,GEM00,2
LOP99: GETBY
JSRIN
OCHAR
INC 1,1
DSZ GEM00,2
JMP LOP99
LDA 0,.13
JSRIN
OCHAR
LDA 0,.10
JSRIN
OCHAR
LDA 3,BUF,2
LDA 0,SENDE,3
STA 0,CPROC,2
UD: LDA 1,ADDRE,2
LDA 3,COUNT,2
LOP2: GETBY
MOV 0,0,SNR
JMP FINIS
LDA 3,.12
SNE 0,3
LDA 0,.10
LDA 3,.13
SNE 0,3
JMP LFCR
LDA 3,.10
SNE 0,3
JMP LFCR
JSRIN
OCHAR
UUUF: INC 1,1
DSZ COUNT,2
JMP LOP2
JMP FINIS
LFCR: LDA 0,.10
JSRIN
OCHAR
LDA 0,.13
JSRIN
OCHAR
LDA 2,CUR
STA 1,ADDRE,2
INC 1,1
GETBY
LDA 1,.10
SNE 0,1
JMP SKIP
LDA 1,.13
SNE 0,1
JMP SKIP
LDA 1,ADDRE,2
JMP UUUF
SKIP: LDA 1,ADDRE,2
DSZ COUNT,2
INC 1,1
JMP UUUF
BIRMA: .+1
9*256+12
1
0
0
FINIS:LDA 2,CUR
SUB 0,0
RETUR
JMP LOOP
INPUT: LDA 2,CUR
LDA 3,EVENT,2
LDA 1,CPROC,2
LDA 0,EVENT+1,2
SNE 0,3
JMP INPUS
JMP .+2
LOP10: LDA 3,+0,3
LDA 0,SENDE,3
SNE 0,1
JMP OKINP
LOP11: LDA 0,EVENT+1,2
SEQ 0,3
JMP LOP10
JMP INPUS
OKINP: LDA 0,MESS0,3
MOVR 0,0,SNC
JMP LOP11
MOVR 0,0,SZC
JMP LOP11
STA 3,GEM00,2
JSRIN
ICHAR
LDA 1,.127
SNE 0,1
JMP RUBOU
LDA 1,.8
SNE 0,1
JMP RUBOU
JSRIN
OCHAR
LDA 3,GEM00,2
LDA 1,MESS2,3
PUTBY
LDA 3,GEM00,2
INC 1,1
STA 1,MESS2,3
ISZ MESS3,3
DSZ MESS1,3
JMP .+2
JMP RETIN
LDA 1,.10
SNE 0,1
JMP CRADD
LDA 1,.13
SNE 0,1
JMP LFADD
LDA 1,.27,2
SNE 0,1
JMP RETIN
JMP @ LOOP1
LFADD: LDA 0,.10
STA 3,COUNT,2
JSRIN
OCHAR
LDA 3,COUNT,2
JMP RETIN
CRADD: LDA 0,.13
STA 3,COUNT,2
JSRIN
OCHAR
LDA 3,COUNT,2
JMP RETIN
LOOP1:LOOP
RUBOU:LDA 2,CUR
LDA 3,GEM00,2
LDA 0,MESS3,3
MOV 0,0,SNR
JMP @ LOOP1
LDA 0,.8
JSRIN
OCHAR
LDA 0,.32
JSRIN
OCHAR
LDA 0,.8
JSRIN
OCHAR
LDA 2,CUR
LDA 3,GEM00,2
ISZ MESS1,3
DSZ MESS3,3
JMP @ LOOP1
JMP @ LOOP1
RETIN: LDA 2,CUR
LDA 0,MESS3,3
MOVZL 0,0
MOVZR 0,0
MOV 0,1
SUB 0,0
STA 0,MESS2,3
STA 0,MESS3,3
STA 0,MESS0,3
STA 3,BUF,2
MOV 3,2
SENDA
JSRIN
LOOP
INPUS: JSRIN
ICHAR
LDA 0,HG
JSRIN
OCHAR
JSRIN
LOOP
HG:125
«ff»
BUFF1:
** .DO 8
0
0
.+8
10
PCDS
0
0
0
0
0
** .ENDC
0
0
0
10
PCDS
0
0
0
0
0
«ff»
27 ;.27
62 ;PIL62
0 ;CPROC
TXT03 ;AMXNM
PCDS: .+0
.-1
0
0
.TXT 'TTY<0><0>'
.+0
.-1
BUFF1
PGDS
0
0
37375
BIRTH
0
0
0
0
BIRTH*2
.BLK 8
.END PCDS
«ff»
«ff»
«nul»