1
0
mirror of https://github.com/PDP-10/its.git synced 2026-03-22 17:08:15 +00:00

Program to poke at a DEUNA.

This commit is contained in:
Lars Brinkhoff
2017-01-26 20:37:34 +01:00
parent 4f21d6219b
commit c80aa1960e
4 changed files with 149 additions and 1 deletions

View File

@@ -6,7 +6,7 @@ include conf/network
SRC = system syseng sysen1 sysen2 sysen3 sysnet kshack dragon channa \
midas _teco_ emacs emacs1 rms klh syshst sra mrc ksc eak gren \
bawden _mail_ l lisp libdoc comlap lspsrc nilcom rwk \
inquir acount gz sys decsys ecc alan sail kcc kcc_sy c
inquir acount gz sys decsys ecc alan sail kcc kcc_sy c lars
DOC = info _info_ sysdoc sysnet syshst kshack _teco_ emacs emacs1 c kcc
BIN = sys2 device emacs _teco_ lisp liblsp alan inquir sail comlap c

56
src/lars/deuna.113 Normal file
View File

@@ -0,0 +1,56 @@
TITLE DEUNA - poke at a DEUNA
.insrt kshack; ksdefs >
a=1
b=2
c=3
p=17
.insrt system; dedefs >
go:
move p,[-100,,pdl]
seto a, ;Enable user I/O
.iotlsr a,
movei a,%drset ;Reset DEUNA
iowri a,%decr0
pushj p,wait
movei a,%dinte ;Enable interrupt
iowri a,%decr0
setz a, ;Clear PCSR2 and 3
iowri a,%decr2
iowri a,%decr3
movei a,%dinte+%dgpcb ;Command Get PCB block
iowri a,%decr0 ;Expect an interrupt
.call [setz ;Get a locked page.
sixbit /CORBLK/
movei %cbndr ;+%cblok
movei %jself ? movei page
movei 400000 ? setzi 100] ;%jsnew
.lose
done: jfcl
.call [setz
sixbit /CORTYP/
movei %jself ? movei page
movem a ? movem b ? setzm c]
.lose
.logout 1,
wait: iordi a,%decr0 ;Wait for interrupt bit
trnn a,%dintr
jrst wait
popj p,
pdl: block 100
page==<.+1777>_-12
end go

53
src/lars/deuna.51 Normal file
View File

@@ -0,0 +1,53 @@
TITLE DEUNA - poke at a DEUNA
.insrt kshack; ksdefs >
a=1
p=17
%devec==120 ;Interrupt vector
%debas==774510 ;Register base address, on UBA3
%decr0=%debas ;PCSR0
%dgpcb==0001 ;Get PCB block
%dstrt==0004 ;Start
%drset==0040 ;Reset
%dinte==0100 ;Enable interrupts
%dintr==0200 ;Interrupt
%ddni ==4000 ;Done
%decr1==%debas+2 ;PCSR1
%decr2==%debas+4 ;PCSR2
%decr3==%debas+6 ;PCSR3
go:
move p,[-100,,pdl]
seto a, ;Enable user I/O
.iotlsr a,
movei a,%drset ;Reset DEUNA
iowri a,%decr0
pushj p,wait
movei a,%dinte ;Enable interrupt
iowri a,%decr0
setz a, ;Clear PCSR2 and 3
iowri a,%decr2
iowri a,%decr3
move a,%dinte+%dgpdb ;Command Get PCP block
iowri a,%decr0 ;Expect an interrupt
.logout 1,
wait: iordi a,%decr0 ;Wait for interrupt bit
trnn a,%dintr
jrst wait
popj p,
pdl: block 100
end go

39
src/lars/deuna.57 Normal file
View File

@@ -0,0 +1,39 @@
TITLE DEUNA - poke at a DEUNA
.insrt kshack; ksdefs >
a=1
p=17
.insrt system; dedefs >
go:
move p,[-100,,pdl]
seto a, ;Enable user I/O
.iotlsr a,
movei a,%drset ;Reset DEUNA
iowri a,%decr0
pushj p,wait
movei a,%dinte ;Enable interrupt
iowri a,%decr0
setz a, ;Clear PCSR2 and 3
iowri a,%decr2
iowri a,%decr3
movei a,%dinte+%dgpcb ;Command Get PCB block
iowri a,%decr0 ;Expect an interrupt
.logout 1,
wait: iordi a,%decr0 ;Wait for interrupt bit
trnn a,%dintr
jrst wait
popj p,
pdl: block 100
end go