256 regions = 8 words ((vma-start-read) (a-constant (+ 400 %sys-com-number-regions))) (illop-if-page-fault) ((m-a) ldb (byte 20. 5) md) ;divide by 32 ((m-b) a-disk-run-light) ((m-b) sub m-b (a-constant (eval (+ 32. 32. 12. -1)))) ((a-boot-progress-base) m-b) ((md) setz) ((m-c) m-a) ((m-d) m-b) clear-top-row ((vma-start-write) m-d) (check-page-write-no-interrupt) ((m-d) add m-d (a-constant 1)) ((m-c) sub m-c (a-constant 1)) (jump-not-equal m-c a-zero clear-top-row) ((md) seto) ((m-d) add m-b (a-constant 32.)) ((m-c) m-a) draw-bottom-row ((vma-start-write) m-b) (check-page-write-no-interrupt) ((m-b) add m-b (a-constant 1)) ((m-c) sub m-c (a-constant 1)) (jump-not-equal m-c a-zero draw-bottom-row) set-boot-progress-bit-for-this-region ((m-a) ldb (byte 20. 5) m-ap) ;get word number ((m-b) ldb (byte 5 0) m-ap) ;get bit in word ((vma-start-read) add m-a a-boot-progress-base) (check-page-read-no-interrupt)