sys: more comments

This commit is contained in:
Phil Budne
2016-03-11 16:32:11 -05:00
parent 802ab257b9
commit 9372fa5f56
5 changed files with 47 additions and 29 deletions
+2 -2
View File
@@ -317,8 +317,8 @@ rkbdi:
wdspo: wdspo:
jms chkint1 jms chkint1
jms forall jms forall
jms dspput jms dspput " put char (fallr "returns" here)
jmp fallr jmp fallr " go back for next (continuation!)
jms sleep; sfiles+6 jms sleep; sfiles+6
jms swap jms swap
jmp wdspo jmp wdspo
+12
View File
@@ -141,6 +141,9 @@ copyz: 0
jmp copyz i " return jmp copyz i " return
t = t+1 t = t+1
" put queued character
" CALLED FROM PI: AVOIDS INDIRECT!!
" queue number in AC
putchar: 0 putchar: 0
"** 01-s1.pdf page 23 "** 01-s1.pdf page 23
dac 9f+t dac 9f+t
@@ -157,6 +160,14 @@ putchar: 0
jmp putchar i jmp putchar i
t = t+1 t = t+1
" get queued character
" CALLED FROM PI: AVOIDS INDIRECT!!
" queue number in AC:
" 1: tty input
" 2: tty output
" 3: display keyboard
" 4: paper tape reader
" 5: paper tape punch
getchar: 0 getchar: 0
jms takeq jms takeq
jmp i getchar jmp i getchar
@@ -168,6 +179,7 @@ getchar: 0
isz getchar isz getchar
jmp i getchar jmp i getchar
" CALLED FROM PI: AVOIDS INDIRECT!!
takeq: 0 takeq: 0
rcl rcl
tad lacq1 tad lacq1
+13 -13
View File
@@ -204,9 +204,9 @@ dspput: 0
jms dspnl " yes jms dspnl " yes
lac dsploc i " get display word lac dsploc i " get display word
sad o400000 " TRAP? sad o400000 " TRAP?
jmp dspleft " yes jmp dspleft " yes (first character)
omq " no: get character back omq " no: or in second character
dac dsploc i " save as "character 2" dac dsploc i " save both characters
isz dsploc " advance display pointer isz dsploc " advance display pointer
jmp i dspput jmp i dspput
@@ -219,19 +219,19 @@ dspput: 0
dspleft: dspleft:
lac dsploc " get display pointer lac dsploc " get display pointer
sad edspbuf " end of the buffer? sad edspbuf " end of the buffer?
jmp 1f " yes jmp 1f " yes: light up a button!?
dac 8 dac 8 " no: store in index
lac o400000 " get TRAP instruction lac o400000 " get TRAP instruction
dac 8 i " store dac 8 i " store as next
cla; llss 18+7 cla; llss 18+7 " shift MQ upto "char1" position
dac dsploc i dac dsploc i " store word with char1
jmp dspput i jmp dspput i
dspnl: 0 dspnl: 0 " only called once!
lac dsplno lac dsplno " get display line number
sad d33 sad d33 " 33?
jmp 1f jmp 1f " yes: light a button!
isz dsplno isz dsplno " no: increment line number
jmp dspnl i jmp dspnl i
1: 1:
lac o2000 " get bit for push button 7 lac o2000 " get bit for push button 7
+8 -8
View File
@@ -341,26 +341,26 @@ putcr: 0
intrp1: " here with TTY interrupt character intrp1: " here with TTY interrupt character
lac d6 " get keyboard special device number lac d6 " get keyboard special device number
dac .int1 " save as interrupt source dac .int1 " save as interrupt source
lac d1 lac d1 " drain tty input buffer?
jms getchar jms getchar
skp skp
jmp .-3 jmp .-3
lac d2 lac d2 " drain tty output buffer?
jms getchar jms getchar
skp skp
jmp .-3 jmp .-3
lac sfiles+0 lac sfiles+0 " wake ttyin sleepers
jms wakeup jms wakeup
dac sfiles+0 dac sfiles+0
lac sfiles+1 lac sfiles+1 " wake ttyout sleepers
jms wakeup jms wakeup
dac sfiles+1 dac sfiles+1
jms chkint " check if user interrupted jms chkint " check if user interrupted
jmp piret " no, return from PI jmp piret " no, return from PI
jmp 1f " yes: return from system call jmp 1f " yes: return thru system call code (dump core)
intrp2: " here with display interrupt character intrp2: " here with display interrupt character
lac d7 lac d7 " get keyboard special device number
dac .int2 dac .int2 " save as interrupt source
lac d3 " drain keyboard buffer? lac d3 " drain keyboard buffer?
jms getchar jms getchar
skp skp
@@ -377,4 +377,4 @@ intrp2: " here with display interrupt character
lac 0 " get interrupt PC lac 0 " get interrupt PC
dac 020 " save as system call return PC dac 020 " save as system call return PC
lac .ac " restore AC from interrupt lac .ac " restore AC from interrupt
jmp 021 " join system call processing!!! jmp 021 " join system call processing (dump core?)
+9 -3
View File
@@ -93,10 +93,16 @@ o777760: 0777760
dm3: -3 dm3: -3
dm1: -1 dm1: -1
9: .=.+t 9: .=.+t " per-routine temp variables
c1: .=.+1 c1: .=.+1 " not used?
q1: q2;q2+90 "** ?? 98 ?? q1: q2;q2+98 " ** 90? 96?? " queue element free list?
.=.+14 .=.+14
" queues (two words each, head and tail pointers?)
" 1: tty input
" 2: tty output
" 3: display keyboard
" 4: paper tape reader
" 5: paper tape punch
q2: q2:
.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0 .+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0
.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0 .+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0;.+2;0