1
0
mirror of https://github.com/DoctorWkt/unix-jun72.git synced 2026-01-13 15:27:49 +00:00
tim.newsham 85aaf6d68b - added rebuild script
- fixed some errors
2008-04-24 23:43:21 +00:00

57 lines
1.5 KiB
Plaintext

mov $bufp,r1
1:
mov r0,(r1)+
add $8,r0
mov r0,-2(r0) / bus address
mov $-256.,-4(r0) / word count
add $512.,r0 / buffer space
cmp r1,$bufp+nbuf+nbuf
blo 1b
mov $sb0,(r1)+ / I/O queue entry drum
mov $sb1,(r1)+ / I/O queue entry disk (mounted device)
mov $swp,(r1)+ / I/O queue entry core image being swapped
mov $[systm-inode]\/2,sb0+4 / sets up initial buffers per
/ format given in
mov $systm,sb0+6 / memory map
mov $-512.,sb1+4
mov $mount,sb1+6
mov $user,swp+6
/ set devices to interrupt
mov $100,*$lks / put 100 into clock status register;
/ enables clock interrupt
/ set up time out subroutines
mov $touts,r0
mov $startty,(r0)+ / if toutt = 0 call startty
mov $pptito,(r0)+ / if toutt+1 = 0 call pptito
tst (r0)+ / add 2 to r0
mov $ntty-1,r1
1 :
mov $xmtto,(r0)+ / if toutt+2 thru toutt+2+ntty=0 call xmtto
dec r1
bne 1b
/ free all character blocks; see H.0 for description
mov $510.,r2
mov $-1,r1
1:
jsr r0,put
sub $2,r2
bgt 1b
/ set up drum swap addresses; see H.0 for description
mov $1024.-64.,r1 / highest drum address; high 64 blks allocated
/ to UNIX
mov $p.dska,r2 / p.dska contains dis addresses for processes
1 :
sub $17.,r1 / 17 blocks per process
mov r1,(r2)+
cmp r2,$p.dska+nproc+nproc
bne 1b