Merge pull request #164 from sebras/describe/dskres.s

Attempt to describe purpose of source code in dskres.s
This commit is contained in:
Phil Budne
2019-10-31 16:11:20 -04:00
committed by GitHub
+20 -14
View File
@@ -1,26 +1,32 @@
" dskres " dskres
iof " Copies the entire file system (except system image and
hlt " swap area) from side 0 of the disk onto same location
dzm track " on side 1.
-640 "
" I.e. copies the first 6400 blocks from side 0 to side 1.
iof " disable interrupts
hlt " halt the computer!
dzm track " start copying from block address 0
-640 " transfer 640 chunks of 10 blocks each
dac c1 dac c1
1: 1:
lac track lac track " read chunk of blocks starting at block "track" on side 0
jms dskrd0 jms dskrd0
lac track lac track " write chunk of blocks starting at block "track" on side 1
jms dskwr1 jms dskwr1
lac track lac track " proceed to next chunk (of 10 blocks)
tad d10 tad d10
dac track dac track
isz c1 isz c1 " increment chunks transferred, if there are chunks remaining
jmp 1b jmp 1b " ...loop and transfer the next chunk
hlt hlt " ...otherwise halt the computer!
sys exit sys exit " call exit system call
track: 0 track: 0 " block address of chunk to transfer
c1: 0 c1: 0 " number of chunks remaining
d10: 10 d10: 10