mirror of
https://github.com/DoctorWkt/unix-jun72.git
synced 2026-04-04 21:17:40 +00:00
- reviewed some of the notes made during entry and adjusted them
according to what seemed right by reading the code. Documented all of the changes in notes.txt. Mostly accepting the hand written corrections in the pdf file.
This commit is contained in:
27
notes.txt
27
notes.txt
@@ -97,9 +97,15 @@ e01-06
|
||||
e02-05
|
||||
- label "1:" is overstruck with "/" in the listing. leaving the
|
||||
label in place. Should be reviewed for semantic meaning.
|
||||
- the struck label is referenced below as "1b" right before
|
||||
"nig:" on e02-06. I believe removing the label would cause
|
||||
an extra comparison to occur but not change he semantics of
|
||||
the loop.
|
||||
e02-09
|
||||
- extra label "sysquit:" handwritten after "sysintr:". Leaving
|
||||
the extra label out.
|
||||
- adding it back in. this label is referenced in the syscall
|
||||
table (u1.s) but not defined elsewhere.
|
||||
e02-10
|
||||
- comment says "cdev has device =" it probably means "#" and could
|
||||
have just been a weak print of "#", but leaving as "=".
|
||||
@@ -125,9 +131,10 @@ indicate two different people commenting the code. I left each as the original.
|
||||
e05-01
|
||||
- line 9 has a crossed out term, so i used the correction "r2"
|
||||
|
||||
e05-01
|
||||
e05-02
|
||||
- line 48 comment says "panic / found no tres storage" - left it as "tres"
|
||||
no idea whether it is supposed to be "tree", "free", or "tres"
|
||||
- reviewed, looks clearly "free", fixed.
|
||||
|
||||
e05-04
|
||||
- some of the latter parts of the code have comments "/ ?", left as is
|
||||
@@ -150,12 +157,19 @@ if the rule is specified, so I leave them there.
|
||||
e07-01
|
||||
- left "cmp r0,$4" as is. There is a write in correction
|
||||
for "r1" for "r0".
|
||||
- reviewed this, r1 has the character at this point and $4 is
|
||||
control-D. The write-in looks correct.
|
||||
- left "to" as is after ttych: There is a write in correction
|
||||
for "from" instead of "to".
|
||||
|
||||
e07-04
|
||||
- left "asr r0" as is. There is a write in correction
|
||||
for "r2" for "r0".
|
||||
- changed it to "r2". The comments clearly say "r2". The
|
||||
value comes from a call to "get" right before the call to
|
||||
this code ("put"), a page earlier inside the getc function.
|
||||
"r2" was previously multipled by 2 in get, so this divide
|
||||
by 2 makese sense to undo that.
|
||||
|
||||
e07-07
|
||||
- printout has: "mov $240.*$ps" but this is invalid syntax and
|
||||
@@ -174,17 +188,28 @@ e08-*
|
||||
e09-01
|
||||
- I'm using tabs between opcode and operands now
|
||||
- left "bic $!77,r1" although written comment says "? !177"
|
||||
- changing to "$!177". This is masking off the high bit of
|
||||
the received ascii character. shortly after this it compares
|
||||
with $177 (delete) so clearly its not supposed to mask off
|
||||
both hight bits ($!77). Also later in the other e09 pages
|
||||
similar operations are performed.
|
||||
e09-02
|
||||
- left "movb tty+38r0),r1" as is. There's a write in
|
||||
correction for "(" instead of "8". This concerns me as it
|
||||
means there are probably some errors in this listing as
|
||||
the paren is most likely the right character here.
|
||||
- fixed this to allow assembly to work.
|
||||
e09-03
|
||||
- hard to tell due to hand written correction, but I believe
|
||||
the line before "rts r0" reads "mov (sp)+,r0"
|
||||
- this makes sense since r0 is pushed onto the stack at the
|
||||
start of the function.
|
||||
- comment "ASC11" (one instead of I) left as is.
|
||||
e09-04
|
||||
- text comment says a label was lost! leaving it out for now.
|
||||
- adding it back. This looks like a switch table starting
|
||||
at the missing label (or actually one instruction before
|
||||
the label, weird that they wrote it this way).
|
||||
- correction "if count >=0" obscures original text in comment.
|
||||
no choice but to use new text.
|
||||
- "ASC11" sic
|
||||
|
||||
@@ -46,7 +46,7 @@ alloc:
|
||||
add $16.,r1
|
||||
cmp r1 ,(sp) / have we examined all free storage bytes
|
||||
blo 1b
|
||||
jmp panic / found no tres storage
|
||||
jmp panic / found no free storage
|
||||
1:
|
||||
asr r3 / find a free block
|
||||
bcs 1f / branch when free block found; bit for block k is in
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
put:
|
||||
asr r0 / divide r2 by 2; r2 is offset in clist
|
||||
asr r2 / divide r2 by 2; r2 is offset in clist
|
||||
mov r2,-(sp) / save r2 on stack
|
||||
movb cl+1(r1),r2 / move offset of last char in list (r1) into r2
|
||||
beq 1f / offset = 0 then go to 1f (i.e., start a new list)
|
||||
|
||||
@@ -32,7 +32,7 @@ trcv:
|
||||
bitb $100,tty+4(r0)
|
||||
beq 2f / non-37 parity not allowed
|
||||
4:
|
||||
bic !77,r1
|
||||
bic $!177,r1
|
||||
bit $40,tty+4(r0)
|
||||
bne 3f / raw
|
||||
cmp r1,$177
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
incb (r2) / normal / jmp to location determined by digits
|
||||
/ 0 and 1 of character's entry in "partab" which
|
||||
/ is now in r3
|
||||
rts r0 / non-printing
|
||||
1: rts r0 / non-printing
|
||||
br 1f / bs
|
||||
br 2f / nl (line feed)
|
||||
br 3f / tab (horizontal tab)
|
||||
|
||||
Reference in New Issue
Block a user